我让用户使用
登录FacebookloginBtn.setLoginBehavior(SessionLoginBehavior.SUPPRESS_SSO);
加载一个新的登录窗口,我正在尝试做的是当窗口关闭时,显示一条消息,说明登录成功/失败。我已经尝试设置一个计时器,用于检查是否存在当窗口打开时启动的活动连接,并在建立活动连接时显示吐司,但这似乎效率低下且不起作用。强制登录是否有一个不完整的监听器?
答案 0 :(得分:1)
来自Facebook文档:
创建一个函数,以便在会话状态发生变化时执行某些逻辑:
private void onSessionStateChange(Session session, SessionState state, Exception exception) {
//Do something
}
为Session.StatusCallBack侦听器创建一个实现并调用您的函数
private Session.StatusCallback callback = new Session.StatusCallback() {
@Override
public void call(Session session, SessionState state, Exception exception) {
onSessionStateChange(session, state, exception);
}
};
使用UILifecycleHelper对象
在onCreate方法中注册侦听器private UiLifecycleHelper uiHelper = new UiLifecycleHelper(getActivity(), callback);
您需要做的其他事情才能正确管理会话,并会更详细地解释here。这应该会让事情顺利进行。