如何解决联系人链接的自定义标题
- 我正在开发一款应用,该应用可在
contacts
提供的默认Android OS
应用中保存用户社交网络链接。 - 我可以在应用程序中保存链接,但我无法自定义标题,因为您可以查看下面的默认通讯录应用程序:
当前代码块:
if (loginResponseData.getLinkedin() != null) {
ContentValues values = new ContentValues();
values.put(ContactsContract.Data.RAW_CONTACT_ID,contactid);
values.put(ContactsContract.Data.MIMETYPE,ContactsContract.CommonDataKinds.Website.CONTENT_ITEM_TYPE);
values.put(ContactsContract.CommonDataKinds.Website.DATA,loginResponseData.getLinkedin());
fragmentActivity.getContentResolver().insert(android.provider.ContactsContract.Data.CONTENT_URI,values);
}
解决方法
对于您想要持久化到数据库中的每种数据类型,您应该进入文档并检查它支持哪些字段,并且您可能希望在插入调用中填写它们。
您可以在这里查看:https://developer.android.com/reference/android/provider/ContactsContract.CommonDataKinds.Website
CommonDataKinds.Website
支持字段 URL、TYPE 和 LABEL。
联系人应用中 url 下方显示的文本是标签字段。
所以你的代码看起来像这样:
ContentValues values = new ContentValues();
values.put(Data.RAW_CONTACT_ID,contactid);
values.put(Data.MIMETYPE,Website.CONTENT_ITEM_TYPE);
values.put(Website.URL,loginResponseData.getLinkedin());
values.put(Website.TYPE,Website.TYPE_CUSTOM); // when this is set to CUSTOM,the contacts app will display the label field
values.put(Website.LABEL,"Linkedin");
contentResolver.insert(android.provider.ContactsContract.Data.CONTENT_URI,values);
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。