我正在運行Android SDK中的聯繫人管理器示例應用程序。當我將聯繫人添加到我的Gmail帳戶時,會將其添加爲「隱形聯繫人」。我認爲這是因爲我沒有告訴聯繫人應該分配哪個「組」。我一直在環顧網絡幾天,空手而歸。如何讓聯繫人組進入聯繫人管理器示例應用程序?
我真正想要做的是將聯繫人添加到我選擇的聯繫人帳戶,並將聯繫人與所選Gmail帳戶中的聯繫人組關聯,以便聯繫人的信息將顯示在用戶的聯繫人中。
我正在運行Android SDK中的聯繫人管理器示例應用程序。當我將聯繫人添加到我的Gmail帳戶時,會將其添加爲「隱形聯繫人」。我認爲這是因爲我沒有告訴聯繫人應該分配哪個「組」。我一直在環顧網絡幾天,空手而歸。如何讓聯繫人組進入聯繫人管理器示例應用程序?
我真正想要做的是將聯繫人添加到我選擇的聯繫人帳戶,並將聯繫人與所選Gmail帳戶中的聯繫人組關聯,以便聯繫人的信息將顯示在用戶的聯繫人中。
您定位的Android版本是?您當然知道,聯繫人API在2.x中發生了根本性的變化...
我遇到了這個確切的隱形聯繫人問題,但僅限於1.x.我找到了解決辦法是添加到內置的「我的聯繫人」組:
// Add to the My Contacts group
ContentValues values = new ContentValues();
values.put(GroupMembership.PERSON_ID, contact.mAndroidId);
values.put(GroupMembership.GROUP_ID, 1); // 1 is always the ID of the built-in "My Contacts" group
activity.getContentResolver().insert(GroupMembership.CONTENT_URI,values);
如果你想添加到特定的用戶定義的組,而不是我的通訊錄中,您將需要的捕漁權GROUP_ID出的Contacts.Groups
表。
,使其與新ContactsContract API的工作,你可以添加這個到ContentProviderOperation列表:
ops.add(ContentProviderOperation.newInsert(ContactsContract.Data.CONTENT_URI)
.withValueBackReference(ContactsContract.Data.RAW_CONTACT_ID, 0)
.withValue(ContactsContract.Data.MIMETYPE,
ContactsContract.CommonDataKinds.GroupMembership.CONTENT_ITEM_TYPE)
.withValue(ContactsContract.CommonDataKinds.GroupMembership.GROUP_ROW_ID, 1)
.build());
是否有一個原因,我不能得到這個問題的答案地方?我錯過了一些基本的東西,還是沒有好的答案? – Chris 2010-12-21 19:46:57