如果我有photo_ids,如何获取照片数据(联系人照片的blob)

时间:2010-08-02 02:44:48

标签: android

如果我有一个photo_ids列表,请告诉我如何获取照片数据?

我试试这个:

cursor = mResolver.query(Contacts.Photos.CONTENT_URI, null, "_id IN (?)" , new String[] {"458"}, null);

但是游标返回null。

任何想法如何排除故障?

谢谢。

2 个答案:

答案 0 :(得分:1)

您可以使用静态方法loadContactPhoto来抓取联系人的照片..

Uri uri = ContentUris.withAppendedId(People.CONTENT_URI, 458);
Bitmap contactPhoto = People.loadContactPhoto(_context, uri, R.drawable.unkown_contact, null);
if (null != contactPhoto) {
    /* Your Magic Here */
}

请注意,您可能希望将R.drawable.unkown_contact替换为不存在的联系人照片的资源,并将_context替换为您拥有的上下文实例。

答案 1 :(得分:1)

新的api是

InputStream is = ContactsContract.Contacts.openContactPhotoInputStream(cr, photo);