AggregationExceptionsを使用できます。連絡先を手動で集約する方法を参照してください。
連絡先と集約がどのように機能するかを理解するのに適した場所は、連絡先プロバイダーのドキュメントです。
簡単な要約:
電話帳に表示される連絡先は、ContactsContract.Contacts テーブルにある連絡先です。電話帳に表示される写真、電話などは、さまざまな RawContacts エントリから取得されます。連絡先は、1 つまたは複数の RawContacts を持つことができます。
RawContacts が共通のデータ (名前、電話番号、電子メールなど) を共有している場合、Contact にはたまたま複数の RawContact があります。この RawContacts の 1 つの連絡先への結合は、自動集計規則によって行われます ( Contact Basicsのドキュメントを参照してください)。
ContactsContract.Contacts テーブルに連絡先を挿入することはできません。ドキュメントから:
注: insert() を使用して Contacts Provider に連絡先を追加しようとすると、UnsupportedOperationException 例外が発生します。「読み取り専用」としてリストされている列を更新しようとすると、更新は無視されます。