联系人 API 将联系人存储为不可见联系人:如何使其可见?
我正在尝试使用 getContentResolver
在 Android 中添加联系人。 首先,我创建了一个 ArrayList:
ArrayList<ContentProviderOperation> ops =
new ArrayList<ContentProviderOperation>();
然后填充了数组列表
int rawContactInsertIndex = ops.size();
ops.add(ContentProviderOperation.newInsert(RawContacts.CONTENT_URI)
.withValue(ContactsContract.RawContacts.ACCOUNT_NAME,accountName)
.build());
ops.add(ContentProviderOperation.newInsert(ContactsContract.Data.CONTENT_URI)
.withValueBackReference(ContactsContract.Data.RAW_CONTACT_ID,rawContactInsertIndex)
.withValue(ContactsContract.Data.MIMETYPE,ContactsContract.CommonDataKinds.StructuredName.CONTENT_ITEM_TYPE)
.withValue(ContactsContract.CommonDataKinds.StructuredName.DISPLAY_NAME, name)
.build());
,最后在 try 块中
getContentResolver().applyBatch(ContactsContract.AUTHORITY, ops);
执行此操作时,我没有收到任何错误或异常。但该联系人并没有出现在 Android 通讯录中。当我检索隐形联系人时,我可以找到该联系人。任何人都可以弄清楚出了什么问题吗?
I am trying to add a contact in Android using getContentResolver
.
First I created an ArrayList
:
ArrayList<ContentProviderOperation> ops =
new ArrayList<ContentProviderOperation>();
then populated the array list by
int rawContactInsertIndex = ops.size();
ops.add(ContentProviderOperation.newInsert(RawContacts.CONTENT_URI)
.withValue(ContactsContract.RawContacts.ACCOUNT_NAME,accountName)
.build());
ops.add(ContentProviderOperation.newInsert(ContactsContract.Data.CONTENT_URI)
.withValueBackReference(ContactsContract.Data.RAW_CONTACT_ID,rawContactInsertIndex)
.withValue(ContactsContract.Data.MIMETYPE,ContactsContract.CommonDataKinds.StructuredName.CONTENT_ITEM_TYPE)
.withValue(ContactsContract.CommonDataKinds.StructuredName.DISPLAY_NAME, name)
.build());
and finally in a try block
getContentResolver().applyBatch(ContactsContract.AUTHORITY, ops);
when I excecute this, I am not getting any error or exception. But the contact does not appear in the Android contacts. When I retrieve the invisible contacts I could find this contact. Can any one figure out what is going wrong?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
这段代码有效!
this code works!