5

連絡先の同期機能を備えたソーシャル ネットワーキング アプリを作成しています。v2.x の連絡先を同期アダプターに挿入 する作業コード (ここで見つけた例から) があります。

ただし、Motorola Blur ソフトウェアは 2.x の連絡先を認識しません (Droid X で 2.2 Moto ビルドを使用しています)。Blur は連絡先 1.x API を使用しますが、その使用方法の例を見つけたり理解したりするのに苦労しています。 このページでは、名前でクエリを実行する方法を示していますが、a) 追加して b) カスタム アカウント (または場合によっては MIME) の種類でクエリを実行したいと考えています。

私が使用している v2 コードは、新しい生の連絡先を作成し、「StructuredName」データ レコードを作成してから、カスタム MIME タイプのデータ レコードを作成します。

1.x API (レベル 3) で同等のことを行うにはどうすればよいですか? これが Contacts.Extensions クラスの目的だと思いますが、ドキュメントはせいぜい不明確です。

4

2 に答える 2

1

Motorola BLUR の連絡先への変更は、コンテンツ プロバイダーの変更よりも、デバイスでのアカウントの管理方法に関係しています。ACCOUNT_NAMEMotorola BLUR デバイスを使用する場合の実際の問題は、とをデバイスに適した値に設定する必要があることですACCOUNT_TYPE

これが問題になるデバイスは Motorola だけではありません。私の仕事の中で、デバイスのカスタム アカウントに追加されたレコードで連絡先アプリケーションがうまく動作しない他のデバイスを見つけたからです。

セットアップ中に、実行しているデバイスの種類を特定し、連絡先の保存に使用するアカウントを決定する必要があります。Samsung Galaxy、HTC Sense デバイス、および MOTOBLUR デバイスの例外として、カスタム連絡先アカウントを使用すると連絡先アプリケーションで連絡先を操作できないことがわかりました (たとえば、連絡先を追加することはできますが、編集することはできません)。アカウントに新しいレコードを挿入できません)。

私の仕事に属しているため、コードを共有することはできませんが、MOTOBLUR デバイスの連絡先に次のアカウントを使用すると動作することをお伝えできます。Verizon の Motorola デバイスには、うまく機能するバックアップ アシスタント アカウントがあります。それ以外の点では、うまく機能しているように見えるデフォルトの BLUR アカウントを使用しています。

com.motorola.android.buacontactadapter タイプと名前が「電話」のアカウントをデバイスで探し、それを使用します。それが存在しない場合は、そのタイプのアカウントを探しcom.motorola.blur.service.bsutils.MOTHER_USER_CREDS_TYPEて (その名前が何であれ) それを使用すると、Motorola デバイスですべての設定が完了します。

コードの一部または参照した例へのリンクを共有していただければ、喜んで深く掘り下げます。

于 2011-09-21T14:33:00.157 に答える
1

質問の最後に対処するには:

このインフラストラクチャは、2.x の連絡先構造でのみサポートされており、そのときに導入されました。

1.X デバイスの OEM 連絡先アプリは、同様に機能する場合と機能しない場合があります。

于 2011-10-13T10:59:35.737 に答える