问题描述
我已经完成了中所述的所有步骤 https://developers.facebook.com/docs/facebook-login/android%20 我也收到了响应,但是当我尝试向图像视图显示个人资料图片时,我收到了这样的错误
GraphResponse: {HttpStatus: 400,errorCode: 100,subErrorCode: 33,errorType: GraphMethodException,errorMessage: 不支持的获取请求。 ID 为“3282910721234”的对象不存在,由于缺少权限而无法加载,或者不支持此操作。请阅读位于 https://developers.facebook.com/docs/graph-api}
的 Graph API 文档有人可以帮我吗?
我写的代码
loginButton = (LoginButton) findViewById(R.id.login_button);
loginButton.setPermissions(Arrays.asList(EMAIL,"public_profile,user_gender"));
// If you are using in a fragment,call loginButton.setFragment(this);
// Callback registration
loginButton.registerCallback(callbackManager,new FacebookCallback<LoginResult>() {
@Override
public void onSuccess(LoginResult loginResult) {
Log.d("InLogin","Successful Login");
//Picasso.get().load("https://graph.facebook.com/" + loginResult.getAccesstoken().getUserId()+ "/picture?type=large").into(image);
// App code
}
@Override
public void onCancel() {
// App code
Log.d("InLogin","Successful logout");
}
@Override
public void onError(FacebookException exception) {
// App code
Log.d("InLogin","Error Occurred");
}
});
}
protected void onActivityResult(int requestCode,int resultCode,Intent data) {
callbackManager.onActivityResult(requestCode,resultCode,data);
super.onActivityResult(requestCode,data);
GraphRequest gr = GraphRequest.newMeRequest(Accesstoken.getCurrentAccesstoken(),new GraphRequest.GraphJSONObjectCallback() {
@Override
public void onCompleted(JSONObject object,GraphResponse response) {
if(object != null)
Log.d("Response",object.toString());
try {
name.setText( object.getString("first_name") + object.getString("last_name") );
Log.d("profile",object.getString("id"));
String userId = object.getString("id");
Picasso.get().load("https://graph.facebook.com/" + userId+ "/picture?type=large").into(image);
Log.d("profile1",object.getString("id"));
} catch (JSONException e) {
e.printstacktrace();
}
}
});
Bundle bd=new Bundle();
bd.putString("fields","id,first_name,last_name,email,gender");
gr.setParameters(bd);
gr.executeAsync();
}
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)