我的应用程序数据库中存储的数字很少。我想在联系人应用程序中匹配这些号码,并使用 mimetype 更新该联系人。基本上 Whatsapp 是怎么做的。他们同步所有联系人,并且他们的应用程序图标开始联系。
我已经完成了同步部分,如果我添加了新联系人,那么我可以在联系人中显示我的应用程序图标。但我的要求是只更新现有的联系人。
这是我试图更新联系人的内容,
ArrayList<ContentProviderOperation> ops = new ArrayList<ContentProviderOperation>();
ops.add(ContentProviderOperation.newInsert(addCallerIsSyncAdapterParameter(Data.CONTENT_URI, true))
.withValueBackReference(Data.RAW_CONTACT_ID,id)
.withValue(Data.MIMETYPE, MIMETYPE)
.withValue(Data.DATA1, "Username")
.withValue(Data.DATA2, "Ite's Me")
.build());
try {
context.getContentResolver().applyBatch(ContactsContract.AUTHORITY, ops);
}
catch (Exception e) {
e.printStackTrace();
}
我rawContactid
从
Cursor cursor = context.getContentResolver().query(Data.CONTENT_URI, new String[] {Data.RAW_CONTACT_ID, Data.DISPLAY_NAME, Data.MIMETYPE, Data.CONTACT_ID },
ContactsContract.CommonDataKinds.Phone.NUMBER + "= ?",
new String[] {phonenumb}, null);
我无法在该联系人中添加连接。我究竟做错了什么。有人可以帮我解决这个问题。
提前致谢。