在Android中获取联系人照片的最佳(最有效)方式

时间:2011-04-25 04:29:37

标签: android photo contact

我从联系人中提取信息,并希望显示相关照片(如果有)。似乎有几种方法可以做到:

  1. 获取用户的ID,然后:

    Uri uri = ContentUris.withAppendedId(ContactsContract.Contacts.CONTENT_URI,id);
    InputStream input = ContactsContract.Contacts.openContactPhotoInputStream(context.getContentResolver(),uri);

  2. 您可以检索用户的PHOTO_ID。我没有挖掘确切的步骤,但据推测,有一种方法可以使用PHOTO_ID来获取照片。

  3. 还有一个PHOTO_URI,我再次假设有一种方法可以用它来拍照。

  4. 现在,我的代码正在使用方法1,它运行得很好。我想知道的是:方法2或3(或者我没有读过的方法)更快/更有效吗?我自然希望尽可能快地制作我的应用程序。任何建议将不胜感激。

1 个答案:

答案 0 :(得分:0)

ContactsContract.Contacts.Photo的文档包含一些示例代码,但我的猜测就是openContactPhotoInputStream正在为您做的事情。