我使用Facebook SDK 4.0,并且我能够使用Facebook登录用户使用Facebook登录用户 -
info = (TextView)findViewById(R.id.info);
loginButton = (LoginButton)findViewById(R.id.login_button);
loginButton.registerCallback(callbackManager, new FacebookCallback<LoginResult>() {
@Override
public void onSuccess(LoginResult loginResult) {
info.setText("User ID: " +
loginResult.getAccessToken().getUserId() + "\n" +
"Auth Token: " + loginResult.getAccessToken().getToken());
}
@Override
public void onCancel() {
info.setText("Login attempt cancelled.");
}
@Override
public void onError(FacebookException e) {
info.setText("Login attempt failed.");
}
});
但我怎样才能获得用户的照片?任何帮助表示赞赏。
答案 0 :(得分:1)
您可以使用:
https://graph.facebook.com/{Facebook_id}/picture?type=large
例如Mark Zuckerberg的Facebook ID是4,所以你可以像这样使用它:
https://graph.facebook.com/4/picture?type=large
在你的情况下,你需要把它放在onSuccess:
@Override
public void onSuccess(LoginResult loginResult) {
String userId = loginResult.getAccessToken().getUserId();
String token = loginResult.getAccessToken().getToken();
info.setText("User ID: " +
userId + "\n" +
"Auth Token: " + token);
String imageUrl = String.format("https://graph.facebook.com/%s/picture?type=large", userId);
}
答案 1 :(得分:0)
您可以使用User Photos API参考。