Facebook android app权限:要求获取用户个人资料图片

时间:2014-07-24 08:51:13

标签: android facebook facebook-android-sdk facebook-permissions

我正在编写使用facebook api的Android应用程序,我需要我的应用程序可以检索用户个人资料图片。

这是我目前的权限:

fb_login_button.setReadPermissions(Arrays.asList("public_profile", "user_friends"));

但我没有在文档中看到任何获取用户个人资料图片的权限,但只有访问所有图片的权限(我对它不感兴趣)。 因此,现在无需任何许可即可访问个人资料图片

2 个答案:

答案 0 :(得分:3)

public_profile权限也会为您提供个人资料图片。

这是您获取个人资料照片的方式

public static Bitmap getFacebookProfilePicture(String userID){
URL imageURL = new URL("https://graph.facebook.com/" + userID + "/picture?type=large");
Bitmap bitmap = BitmapFactory.decodeStream(imageUrl.openConnection().getInputStream());

return bitmap;
 }

 Bitmap bitmap = getFacebookProfilePicture(userId);

参考:Android - get facebook profile picture

答案 1 :(得分:1)

您不需要任何特殊许可即可获取个人资料照片。使用权限" public_profile"你可以获得用户的身份证明。如果您有用户ID,则可以使用图形api获取个人资料图片,如下所示。

http://graph.facebook.com/user_id/picture?type=square&redirect=false

如果你使用redirect = false,你将获得如下的json。

{
   "data": {
      "url": "https://fbcdn-profile-a.akamaihd.net/hprofile-ak-xaf1/t1.0-1/c92.62.775.775/s50x50/564992_463610327023364_1165619683_n.jpg",
      "is_silhouette": false
   }
}

" url"在json中将给出用户的个人资料图片。 您也可以使用它而无需重新校正。