Android - 检索联系人的照片

时间:2014-06-02 15:39:07

标签: android facebook android-contacts

我目前正在开发API 7+的Android应用程序。在此应用程序中,用户必须从手机中选择联系人。为此,我将他的联系人列表(照片+姓名)显示在应用程序中。

我可以毫无问题地检索联系人列表和照片,如果用户没有照片,我可以显示默认照片。

我唯一的问题是联系人的照片与Facebook同步。事实上,我的应用无法检索照片,并认为该联系人没有任何照片。

这里是我使用的代码:

public static final InputStream getContactPhoto(WeakReference<Activity> activity, long contactId)
{
  final Uri contactUri = ContentUris.withAppendedId(Contacts.CONTENT_URI, contactId);
  final Uri photoUri = Uri.withAppendedPath(contactUri, Contacts.Photo.CONTENT_DIRECTORY);
  final Cursor cursor = activity.get().getContentResolver().query(photoUri, new String[] { Contacts.Photo.DATA15 }, null, null, null);

  if (cursor == null)
  {
    return null;
  }

  try
  {
    if (cursor.moveToFirst() == true)
    {
      final byte[] data = cursor.getBlob(0);

      if (data != null)
      {
        return new ByteArrayInputStream(data);
      }
    }
  }
  finally
  {
    cursor.close();
  }

  return null;
}

我应该在哪里要求照片检索照片来自哪里(联系方式,Facabook,Google +等)?

提前感谢您的答案和有关该主题的提示!

0 个答案:

没有答案