所以我有一个简单的登录按钮,可以在我的oncreate中执行此操作:
mLoginButton = (LoginButton)findViewById(R.id.connect_facebook_button);
mLoginButton.setApplicationId(.getResources().getString(R.string.app_id));
mLoginButton.setUserInfoChangedCallback(new LoginButton.UserInfoChangedCallback() {
public void onUserInfoFetched(GraphUser user) {
setUser(user); // Just sets mUser to be this user
try {
Toast.makeText(this, mUser.getFirstName(), Toast.LENGTH_SHORT).show();
} catch (Exception FacebookException) {
FacebookException.printStackTrace();
}
}
});
所有这些都被成功调用,包括onUserInfoFetched。
问题是,在每个实例中,我的Graphuser用户都为null。
我的appID是正确的,我的android哈希是他们给我的调试版(在示例应用程序上测试工作正常),登录屏幕确实弹出...不确定从哪里开始。
另外,如果我按两次按钮,我会收到错误:
an attempt was made to open a session that has a pending request
答案 0 :(得分:6)
糟糕!忘了我的活动结果!
public void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
}
这就是诀窍。