android - android 上的外部(例如 facebook)联系人照片

标签 android android-contacts android-contentresolver

我写了一个 SMS 应用程序,在概览中显示我联系人的联系人照片。

获取“正常”照片没问题:

Uri cu = ContentUris.withAppendedId(Contacts.CONTENT_URI, contactId);
final InputStream input = Contacts.openContactPhotoInputStream(getContext().getContentResolver(), cu);
return BitmapFactory.decodeStream(input);

问题是:联系人照片由 e.g. 提供。 facebook 不在那里,我怎样才能得到这些“外部”照片?

最佳答案

我对这个话题做了很多研究。我似乎 facebook 已经设置了一些权限,只允许几个系统应用程序访问,不允许第三方应用程序访问。

例如,请参阅此链接:https://groups.google.com/forum/#!topic/android-developers/lREN16Hh4LQ

我还尝试从 facebook 应用程序解码 AndroidManifest.xml 文件,但即使添加他们在内部使用的权限也没有授予我访问权限。

用户可以安装自己的同步工具(在 Play 商店中可用)来将联系人与 Facebook 同步。这很好用。我可以在安装了此类工具的设备上加载个人资料图片。

我个人对 facebook 限制此类访问感到有点失望。他们应该为此添加自定义权限。

关于android - android 上的外部(例如 facebook)联系人照片,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17412583/

相关文章:

java - float 类型转换无法正常工作,始终计算为 0.0

java - 如何在没有按钮的情况下导航回主要 Activity

android - 如何检查 Android 中数组中存在的数据?

java - CursorLoader 通知数据变化

java - Android - Java - MediaStore - 如何使用多个条件的选择

android - 在中心的椭圆路径上绘制文本

android - 为什么在 HTC Desire 上发送短信时会出现 NullPointerException,或者什么是 SubmitPdu?

android - 是否可以从结束预付费电话后出现的对话中读取通话费用历史记录?

android - 从联系人 Android 获取单个电话号码

android - 无法解析内容 ://com. android.alarmclock/alarm 的提供商