9

2つ以上の連絡先に参加できるかどうかを知る必要があります(プログラムによる方法で、Contacts android APIなどを使用して)。

たとえば、メール アカウントと電話番号を持つ連絡先 "Axel Rose" があり、whatsapp、Facebook、Skype などの一部のアプリが、既存の連絡先をマージするのではなく、Axel Rose の新しい連絡先エントリを作成していることに気付きました。

電話から「参加機能」を使用して連絡先に参加できますが、プログラムによる方法はありますか?

前もって感謝します。
クリスチャン。

4

1 に答える 1

1

AggregationExceptionsを使用できます。連絡先を手動で集約する方法を参照してください。

連絡先と集約がどのように機能するかを理解するのに適した場所は、連絡先プロバイダーのドキュメントです。

簡単な要約:

電話帳に表示される連絡先は、ContactsContract.Contacts テーブルにある連絡先です。電話帳に表示される写真、電話などは、さまざまな RawContacts エントリから取得されます。連絡先は、1 つまたは複数の RawContacts を持つことができます。

RawContacts が共通のデータ (名前、電話番号、電子メールなど) を共有している場合、Contact にはたまたま複数の RawContact があります。この RawContacts の 1 つの連絡先への結合は、自動集計規則によって行われます ( Contact Basicsのドキュメントを参照してください)。

ContactsContract.Contacts テーブルに連絡先を挿入することはできません。ドキュメントから:

注: insert() を使用して Contacts Provider に連絡先を追加しようとすると、UnsupportedOperationException 例外が発生します。「読み取り専用」としてリストされている列を更新しようとすると、更新は無視されます。

于 2014-09-18T08:26:12.440 に答える