Vì vậy, tôi có một nút đăng nhập đơn giản mà thực hiện điều này trong onCreate của tôi:Android Facebook SDK v3.0 SSO LoginButton trở về một null GraphUser
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();
}
}
});
Tất cả điều đó được gọi là thành công, bao gồm cả onUserInfoFetched.
Vấn đề là, trong mọi trường hợp, người dùng Graphuser của tôi là rỗng.
ID ứng dụng của tôi là chính xác, mã băm của tôi là trình gỡ lỗi mà họ cung cấp cho tôi (thử nghiệm trên ứng dụng mẫu hoạt động tốt), màn hình đăng nhập thực sự bật lên ... Không thực sự chắc chắn nên đi đâu.
Ngoài ra, nếu tôi nhấn nút hai lần, tôi nhận được một lỗi:
an attempt was made to open a session that has a pending request
Mã có vẻ tốt và tôi có thể lấy thông tin GraphUser khi tôi sử dụng mã của bạn. Ví dụ HelloFacebookSample có phù hợp với bạn hay không, theo nghĩa là bạn có thể xem thông tin người dùng đã đăng nhập? –