我在这篇文章的标题中有一个问题.我无法登录.
SessionState currentstate = session.getState();
Run Code Online (Sandbox Code Playgroud)
给了我一个州CLOSED_LOGIN_FAILED.我看了一下这篇文章,Android Facebook SDK 3.0在登录时给出了"remote_app_id与存储的id不匹配"
我使用keytool生成了一个密钥并将其放在App Dashboard中.但这似乎没有帮助.对此有任何帮助表示赞赏
我可以第一次登录.我有一个选项,用户可以在Android应用程序中禁用Facebook.选择此项后,facebook状态将变为CLOSED.当我再次使用该选项时,要在API中重新登录,请在回调函数中的OPENING处挂起.
根据我发现第一次调用的例子
session.openForRead(new Session.OpenRequest(activity).setCallback(statusCallback));
Run Code Online (Sandbox Code Playgroud)
第二个用途
Session.openActiveSession(activity, true, statusCallback);
Run Code Online (Sandbox Code Playgroud)
回调函数如下所示:
private static class SessionStatusCallback implements Session.StatusCallback {
// callback when session changes state
@Override
public void call(Session session, SessionState state, Exception exception) {
if (session.isOpened()) {
// make request to the /me API
Request.executeMeRequestAsync(session, new Request.GraphUserCallback() {
// callback after Graph API response with user object
@Override
public void onCompleted(GraphUser user, Response response) {
if (user != null) {
GlobalVars.setUser(user.getName());
SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(GlobalVars.getContext());
Editor editor = prefs.edit();
editor.putBoolean("facebook", true);
editor.commit(); …Run Code Online (Sandbox Code Playgroud)