facebook会议未开幕

时间:2012-12-28 04:26:59

标签: java android facebook

我正在尝试将facebook sdk 3.0 for android添加到我的应用程序中。

我正在尝试使用函数

登录
  

OpenSessionWithAllowLoginUI(boolean allowLoginUI)

当会话状态改变功能时

  

SessionStateChanged(会话,状态,异常)

被调用。这些功能如下。

 public void OpenSessionWithAllowLoginUI(boolean allowLoginUI)
    {

    Session.openActiveSession(this, true, new Session.StatusCallback()
    {
           @Override
           public void call(Session session, SessionState state, Exception exception)
           {
               SessionStateChanged(session, state, exception);
           }
    })
}

public void SessionStateChanged(Session session, SessionState state, Exception exception)
{
    switch (state)
    {
        case OPENED:
              if (exception == null)
              {
                  facebook = new Facebook("6346513133546");
              }

            break;

        case CLOSED:
        case CLOSED_LOGIN_FAILED:
            Session.getActiveSession().closeAndClearTokenInformation();
            facebook = null;
            break;

        default:
            break;
    }
}

在调用函数会话状态时更改两次。首先,它将会话状态显示为" OPENING"登录后点击" ok"对于权限弹出,会话状态更改为" CLOSED_LOGIN_FAILED"。会话状态永远不会打开"我得到以下异常

  

remote_app_id与存储的ID

不匹配

任何人都可以告诉我这里做错了什么。

2 个答案:

答案 0 :(得分:3)

问题是我没有提供正确的密钥哈希。我使用keytool -exportcert -alias androiddebugkey -keystore .android/debug.keystore | openssl sha1 -binary | openssl base64生成了密钥哈希并且它工作了

答案 1 :(得分:0)

您能否确认Android应用上的app_id与应用信息中心(https://developers.facebook.com/apps)上的app_id完全相同?还要确保“原生Android应用程序”具有绿色复选标记,启用“Facebook登录”并添加密钥哈希。