Facebook Android SDK openActiveSession()没有弹出窗口?

时间:2014-06-21 04:50:11

标签: android facebook facebook-android-sdk

我的应用要求用户使用Facebook登录才能使用它。当我的应用加载时,我会调用Session.openActiveSession()。这将在弹出的对话框中打开Facebook的登录表单。用户可以选择关闭对话框。是否可以使登录表单占用整个页面?这样,如果用户想要关闭Facebook的登录表单,我的应用程序也会关闭。

protected void onCreate(Bundle savedInstanceState) {

    ...

    Session.openActiveSession(this, true, Arrays.asList("email"), new Session.StatusCallback() {
        @Override
        public void call(Session session, SessionState state,
                Exception exception) {
            if (session.isOpened()) {
                ...
            }
        }
    });
}

1 个答案:

答案 0 :(得分:0)

推荐的机制是让您的应用与用户沟通,要求用户在继续之前登录,而不是仅仅关闭。

如果用户关闭对话框或取消登录,状态回调将进入CLOSED_LOGIN_FAILED状态,异常字段中应该有一个FacebookOperationCanceledException,因此您可以随时将其捕获。