<ignore this =“”q =“”> Android Facebook UserSettingsFragment会话状态停留在OPENING </ignore>

时间:2014-04-18 12:51:52

标签: android facebook facebook-android-sdk

我意识到这是一个愚蠢的问题,需要删除但是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);     


}

2 个答案:

答案 0 :(得分:0)

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

Facebook api hangs at "Opening" during openActiveSession

答案 1 :(得分:0)

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