无法更新android中的联系人照片

时间:2014-12-18 20:23:59

标签: android

我尝试使用以下代码更新Android中的联系人照片,

public void setPhoto(String cid,byte [] photo){

int result;

    ContentValues values = new ContentValues();
   values.put(ContactsContract.CommonDataKinds.Photo.PHOTO, photo);
        result = getContentResolver().update
                (ContactsContract.Contacts.CONTENT_URI, values, ContactsContract.Contacts._ID
                        + " = " + cid, null);
    Toast.makeText(Home.this, "Number of rows updated " + result, Toast.LENGTH_SHORT).show();

}

我收到结果,更新的行为1,但联系人照片未更新。我在这里遗漏了什么。

我的AndroidManifest.xml文件包含以下内容,

<uses-permission android:name="android.permission.READ_CONTACTS" />
<uses-permission android:name="android.permission.WRITE_CONTACTS" />

1 个答案:

答案 0 :(得分:0)

我认为我们需要使用RAW_CONTACT_ID来更新联系人。有关详细信息,请参阅此link。 然后,您可以使用以下link中的代码更新照片