安卓 :Programmatically created contact is not syncing with Gmail Account

标签 android contacts

我可以在“我的应用”中使用以下方式创建新联系人:

ArrayList<ContentProviderOperation> ops = new ArrayList<ContentProviderOperation>();
int rawContactInsertIndex = ops.size();
ops.add(ContentProviderOperation.newInsert(RawContacts.CONTENT_URI)
        .withValue(RawContacts.ACCOUNT_TYPE, null)
        .withValue(RawContacts.ACCOUNT_NAME, null).build());
ops.add(ContentProviderOperation
        .newInsert(ContactsContract.Data.CONTENT_URI)
        .withValueBackReference(ContactsContract.Data.RAW_CONTACT_ID,
                rawContactInsertIndex)
        .withValue(Data.MIMETYPE, Phone.CONTENT_ITEM_TYPE)
        .withValue(Phone.NUMBER, "9X-XXXXXXXXX").build());
ops.add(ContentProviderOperation
        .newInsert(Data.CONTENT_URI)
        .withValueBackReference(Data.RAW_CONTACT_ID,
                rawContactInsertIndex)
        .withValue(Data.MIMETYPE, StructuredName.CONTENT_ITEM_TYPE)
        .withValue(StructuredName.DISPLAY_NAME, "Mike Sullivan")
        .build());
try {
    ContentProviderResult[] res = getContentResolver().applyBatch(
            ContactsContract.AUTHORITY, ops);
} catch (RemoteException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
} catch (OperationApplicationException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
}

它工作正常,我可以看到联系人已创建,但是当我将我的联系人与我的 Gmail 帐户同步时,我在 Gmail 联系人中看不到它。

注意:如果我使用设备的 native 联系人应用程序创建联系人并与 Gmail 同步,我可以在 Gmail 中看到该联系人。

最佳答案

一些我是如何想出来的......

你可以使用

ops.add(ContentProviderOperation.newInsert(RawContacts.CONTENT_URI)
        .withValue(RawContacts.ACCOUNT_TYPE, "com.google")
        .withValue(RawContacts.ACCOUNT_NAME, "xxxxx@gmail.com")
        .build());

其中,com.google 是帐户类型,xxxxx@gmail.com 是您要与之同步的帐户 ID。

谢谢

关于安卓 :Programmatically created contact is not syncing with Gmail Account,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13179380/

相关文章:

android - 如何在特定位置绘制点并用手指拖动在点之间绘制线?

android - 我的应用程序在Android 9上运行正常,但在Android 10上却不断崩溃

contacts - 子弹物理 : contacts force/impulse

iphone - 以编程方式编辑 iOS 联系人

qt - 如何安装Qt mobility?

macos - SwiftUI:如何从 macOS 上的“通讯录”中拖放联系人

android - 我如何链接推送通知以打开已保存的图像

android - NetworkUtils 类

安卓自定义设置

python - 将联系人添加到 Google SystemGroup