2012-03-05 99 views
0

我的设备上有两个联系人组,如Work,Home。我必须在该特定群组上添加联系人。像Add john(Contacts name0) to Work groupAndroid联系人组更改

我用下面的代码:

ContentValues values = new ContentValues(); 
       values.put(ContactsContract.CommonDataKinds.GroupMembership.RAW_CONTACT_ID, 
         Integer.parseInt(contactId)); 
       values.put(
         ContactsContract.CommonDataKinds.GroupMembership.GROUP_ROW_ID, 
         "3"); 
       values 
         .put(
           ContactsContract.CommonDataKinds.GroupMembership.MIMETYPE, 
           ContactsContract.CommonDataKinds.GroupMembership.CONTENT_ITEM_TYPE); 

       context.getContentResolver().insert(
         ContactsContract.Data.CONTENT_URI, values); 

但我得到以下输出:content://com.android.contacts/data/714

请指引我,我究竟做错了什么?

在此先感谢!

回答

0

我没有看到任何错误!是什么让你觉得有什么不对?

看起来您正尝试将由“3”标识的组添加到由contactId标识的原始联系人。结果是contactId现在属于组“3”(您必须在ContactsContract.Groups中查找“3”)。

这样做是将一个GroupMembership行添加到数据表中。组成员身份是原始联系人contactId的属性。所以你已经完成了你要做的事情。结果是一个Uri指向你添加的数据行。

我想你还在等别的东西。你能详细说明吗?

+0

谢谢约翰,我必须在工作中添加约翰(我的设备的联系人名称)(“3”是工作组的组原始ID)组已经在我的家庭组。请问你可以建议我哪个我有使用而不是ContactsContract.Data.CONTENT_URI .. – 2012-03-06 06:17:03