请帮帮我这个问题。 我正在尝试将其他帐户中的所有联系人复制到我应用的帐户。因此,我将所有不属于我应用帐户的原始联系人复制到我应用的帐户。我将RawContacts.CONTACT_ID设置为与复制的相同,以避免在Android Contacts应用中出现重复。这意味着RawContacts._ID将是不同的,但RawContacts.CONTACT_ID应该是相同的。
protected Builder buildEntry(ContentProviderOperation.Builder builder, Resource resource) {
Contact contact = (Contact) resource;
EntriesFields entry = getEntriesField(resource);
builder = builder
.withValue(RawContacts.ACCOUNT_NAME, account.name)
.withValue(RawContacts.ACCOUNT_TYPE, account.type)
.withValue(entry.entryColumnRemoteName(), contact.getName())
.withValue(entry.entryColumnUID(), contact.getUid())
.withValue(entry.entryColumnUnknow(), contact.getUnknownProperties())
.withValue(RawContacts.CONTACT_ID, contact.getContactId())
.withValue(entry.entryColumnDirty(), 1);
}
}
但我遇到了这些问题:
如果联系人不属于可见组(“Contacts.IN_VISIBLE_GROUP”!= 1),则无法将源联系人的RawContacts.CONTACT_ID设置为新联系人。
使用一些特殊的联系人,即使他们在IN_VISIBLE_GROUP,但它也在Android Contact的应用程序中重复(这意味着设置RawContacts.CONTACT_ID不起作用)。
你有没有遇到过这些问题,任何提示都会非常感激。
感谢。