更新 我发现这个问题是由于该组没有source_id(通过查看Log.d消息找到 - 来自同步适配器的消息)。 我问了一个相关问题HERE
最终找出原因。
原始问题: 我正在使用以下代码向组添加联系人。 完成后,我会看到手机上群组中的联系人,但同步失败,“同步目前遇到问题。很快就会回来。”
如果我运行这个应用程序,它确实说团队成员是坏的。 任何想法是我做错了什么?
values = new ContentValues();
values.put(ContactsContract.CommonDataKinds.GroupMembership.MIMETYPE,ContactsContract.CommonDataKinds.GroupMembership.CONTENT_ITEM_TYPE);
values.put(ContactsContract.CommonDataKinds.GroupMembership.RAW_CONTACT_ID, 132);
values.put(ContactsContract.CommonDataKinds.GroupMembership.GROUP_ROW_ID, 30);
context.getContentResolver().insert(ContactsContract.Data.CONTENT_URI,values);
更新 显示的值显然是硬编码的,并且改变了我在下面显示的内容。
我手动创建了一个组(11 myGroup1)并创建了另一个gorup 40(myNewTestGroup)和 组成员记录1934(组11中的成员资格)似乎有效,但1933年(组40中的成员资格)被破坏(导致同步失败)。
以下是我在groupmembership记录之间看到的内容。 除了预期的_id差异外,它们似乎相同。 关于我必须缺少什么的任何想法?正如我上面所说,我指出的应用程序确实发现了组成员身份的问题,但我不知道它是什么。
: --- begin ---
: key = mimetype , value = vnd.android.cursor.item/group_membership
: key = _id , value = 1934
: key = data1 , value = 11
: key = contact_id , value = 294
: key = data2 , value = null
: key = data3 , value = null
: key = lookup , value = 1645i7c8c143a8f6bc41e.2452i1485527796.66ixxxx914
: key = raw_contact_id , value = 132
: --- end ---
: --- begin ---
: key = mimetype , value = vnd.android.cursor.item/group_membership
: key = _id , value = 1933
: key = data1 , value = 40
: key = contact_id , value = 294
: key = data2 , value = null
: key = data3 , value = null
: key = lookup , value = 1645i7c8c143a8f6bc41e.2452i1485527796.66ixxxx914
: key = raw_contact_id , value = 132
: --- end ---
And here are the group records
: key = title , value = myGroup1
: key = data_set , value = null
: key = _id , value = 11
: key = group_visible , value = 1
: key = system_id , value = null
: key = should_sync , value = 1
: key = notes , value = myGroup1
: key = deleted , value = 0
: --- end ---
: --- begin ---
: key = title , value = myNewTestGroup
: key = data_set , value = null
: key = _id , value = 40
: key = group_visible , value = 1
: key = system_id , value = null
: key = should_sync , value = 1
: key = notes , value = myNewTestGroup
: key = deleted , value = 0
: --- end ---