我使用以下代码来获取我的facebook用户配置文件,问题是,当我触发newMeRequest时,它从不响应。
会话已经打开,我还在manifest.xml中添加了Internet权限,如何解决?谢谢你的帮助
public class ProfileFragment extends Fragment {
private View rootView;
private ImageView profilePic;
private Context ctx;
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
ctx = getActivity();
rootView = inflater.inflate(R.layout.profile, container, false);
profilePic = (ImageView) rootView.findViewById(R.id.profile_pic);
Session session = Session.getActiveSession();
if (session.isOpened()) {
Log.d("test1","success 123");
Request.newMeRequest(session, new MeReqCallback());
} else {
Log.d("test1","fail 123");
}
return rootView;
}
private class MeReqCallback implements GraphUserCallback {
@Override
public void onCompleted(GraphUser user, Response response) {
Log.d("test1",response.getError().getErrorMessage());
new ImageLoader(ctx).execute(profilePic,"https://graph.facebook.com/"+ user.getId() +"/picture");
}
}
记录后,它会成功123,但它甚至没有落入onCompleted函数,这意味着甚至没有记录错误消息。
由于
答案 0 :(得分:2)
这是我昨天回答的问题(app crash when try get user photo by Facebook iOS Graph API with app-scoped user id)。
请求/me/picture
会导致http 304重定向,显然ImageLoader()
无法按照您当前使用它的方式处理重定向。
答案 1 :(得分:2)
您实际上并没有执行请求。在请求定义的末尾添加.executeAsync()
。