2016-12-15 761 views
1

我正在研究Android版本的应用程序,该应用程序使用Facebook进行授权并检索用户的好友列表。如何从Facebook获取用户的好友个人资料照片(头像)

从SDK v.2.0开始,很难获得尚未安装应用程序的朋友列表,但是我已经开始工作,现在我需要链接到朋友个人资料图片(头像)。但Facebook不想为未安装应用程序的朋友返回正常的ID。例如,如果朋友安装了应用程序,则FB将其ID作为数字返回,如651651616851,如果不是,则FB返回字符串“glkjrgbdjrbgjdrbhgjhLFKBfEFbFkjgnrg”。

如果我使用类似数字的ID来检索照片,它可以工作,但是如果我尝试使用charlike ID,FB会返回803错误。我的问题是如何获取正常ID或如何获取朋友个人资料照片?

+0

检查[this](http://stackoverflow.com/a/32311187/6005977)。它会帮助你 –

+0

所以你用taggable_friends或invitable_friends来获取朋友列表?这些端点是为了他们名字所表示的特定目的;您不得将其用于任何其他目的。 Facebook将拒绝您的应用在评论中的使用。 Facebook出于某种原因介绍了这些模仿 - 不要试图规避它们。 – CBroe

回答

1

这是API调用来获取的好友的照片,你可以指定一个(最小)宽度和高度:

/me/friends?fields=picture.width(400).height(400) 
0

Please follow the link of facebook sdk about the Track Current Profile.

FacebookSdk.sdkInitialize(this.getApplicationContext()); 
    callbackManager = CallbackManager.Factory.create(); 

    ProfileTracker profileTracker = new ProfileTracker() { 
     @Override 
     protected void onCurrentProfileChanged(
       Profile oldProfile, 
       Profile currentProfile) { 
      // App code 
       Uri uri = currentProfile.getProfilePictureUri(200,200); 
     } 
    }; 

现在从乌里你可以下载用户当前配置文件的配置文件图片。

相关问题