ArrayList<ContentProvIDerOperation> ops = new ArrayList<ContentProvIDerOperation>();ops.add(ContentProvIDerOperation.newInsert(ContactsContract.RawContacts.CONTENT_URI) .withValue(RawContacts.AGGREGATION_MODE,RawContacts.AGGREGATION_MODE_DEFAulT) .withValue(ContactsContract.RawContacts.ACCOUNT_TYPE,null) .withValue(ContactsContract.RawContacts.ACCOUNT_name,null).build());// structurednameops.add(ContentProvIDerOperation.newInsert(ContactsContract.Data.CONTENT_URI) .withValueBackReference(ContactsContract.Data.RAW_CONTACT_ID,0) .withValue(ContactsContract.Data.MIMETYPE,ContactsContract.CommonDataKinds.Structuredname.CONTENT_ITEM_TYPE) .withValue(ContactsContract.CommonDataKinds.Structuredname.disPLAY_name,"Test") .withValue(ContactsContract.CommonDataKinds.Structuredname.FAMILY_name,"Tester") .withValue(ContactsContract.CommonDataKinds.Structuredname.GIVEN_name,"Test") .build());// PHONEops.add(ContentProvIDerOperation.newInsert(ContactsContract.Data.CONTENT_URI) .withValueBackReference(ContactsContract.Data.RAW_CONTACT_ID,ContactsContract.CommonDataKinds.Phone.CONTENT_ITEM_TYPE) .withValue(ContactsContract.CommonDataKinds.Phone.TYPE,"0") .withValue(ContactsContract.CommonDataKinds.Phone.NUMBER,"12345678").build());try { getContentResolver().applyBatch(ContactsContract.AUTHORITY,ops);} catch (remoteexception e) { e.printstacktrace();} catch (OperationApplicationException e) { e.printstacktrace();}
根据我的理解,AndroID通常应该自动聚合联系人,使我的2个插入一个条目.然而,这不会发生,我可以在拨号器应用程序中看到2个具有相同数据的联系人.
有任何想法吗?
解决方法 聚合仅适用于来自不同帐户的插入联系人.如果您从同一帐户插入两个原始联系人,则不会对其进行汇总. 总结以上是内存溢出为你收集整理的android – 插入新联系人时自动联系人聚合无效全部内容,希望文章能够帮你解决android – 插入新联系人时自动联系人聚合无效所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)