【问题标题】:<Ignore This Q>Android Facebook UserSettingsFragment session status stuck at OPENING<Ignore This Q>Android Facebook UserSettingsFragment 会话状态卡在 OPENING
【发布时间】:2016-01-21 21:25:16
【问题描述】:

我意识到这是一个愚蠢的问题,需要删除,但 stackoverflow 不会让我这样做,因为它有答案

我正在尝试使用 UserSettingsFragment 在我的应用程序中使用 Facebook 实现登录。会话状态似乎停留在 OPENING。它永远不会继续打开。我已将片段实例化如下

if(userSettingsFragment==null){
    userSettingsFragment=new UserSettingsFragment();
    Session session = Session.getActiveSession();
    if(session==null || session.isClosed()){
        userSettingsFragment.setPublishPermissions(Arrays.asList("publish_actions"));
    }
    userSettingsFragment.setSessionStatusCallback(new Session.StatusCallback(){
        @Override
        public void call(Session session, SessionState state, Exception exception) {
            Log.i("LoginUsingFBMain", String.format("New session state: %s", state.toString()));
        }
    });
}
fragment=userSettingsFragment;
.
.
.
getFragmentManager().popBackStack(null, FragmentManager.POP_BACK_STACK_INCLUSIVE);
FragmentTransaction fragmentTransaction = getSupportFragmentManager().beginTransaction();
fragmentTransaction.replace(R.id.content_frame, fragment);
fragmentTransaction.commit();

我也有代码来捕获登录结果。

@Override
protected void onActivityResult(
        int requestCode, int resultCode, Intent data) {
    if(userSettingsFragment != null)
        userSettingsFragment.onActivityResult(requestCode, resultCode, data);
    uiHelper.onActivityResult(requestCode, resultCode, data);     


}

【问题讨论】:

    标签: android facebook facebook-android-sdk


    【解决方案1】:

    您是否覆盖了片段中的 onActivityResult() 方法?请尝试将其移至 Activity。

    Facebook api hangs at "Opening" during openActiveSession

    【讨论】:

    • 不,是活动中的方法。我已经看过那个帖子了。 :(
    【解决方案2】:

    发现问题。我的哈希不正确。较新版本的 sdk 实际上给了我一条错误消息。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2011-02-26
      • 2014-03-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多