Android以编程方式将联系人设置为收藏夹

时间:2014-05-29 11:20:01

标签: android android-contentprovider contacts android-contacts

任何人都可以告诉我,如果我有联系人列表并在我的应用程序中阅读它们,我想直接从我的应用程序设置联系人,这样当我再次打开手机联系时,我将能够找到联系人在最喜欢的Android手机列表中。

请帮忙

2 个答案:

答案 0 :(得分:5)

您必须向应用程序添加权限才能写入联系人内容提供商。 android.permission.WRITE_CONTACTS android.permission.READ_CONTACTS

之后,您需要更新STARRED字段的值。

ContentValues v = new ContentValues(); v.put(ContactsContract.Contacts.STARRED,1); getContentResolver().update(ContactsContract.Contacts.CONTENT_URI, v, ContactsContract.Contacts.Data.DATA1+"=?", new String[]{putThePhoneNumberHere+""});

答案 1 :(得分:1)

您需要将联系人数据库中的STARRED值从0更新为1.

类似的东西:

values.put(Contacts.STARRED, 1);

getContentResolver().update(Contacts.CONTENT_URI, values, Contacts.DISPLAY_NAME + "= ?", strNamevalue);

这是一个SQL查询:

UPDATE %Contacts.CONTENT_URI% SET STARRED = 1 WHERE %Contacts.DISPLAY_NAME% = %strNamevalue% 

%%中的值应替换为有效的表名和where子句params

希望有所帮助

相关问题