我正在使用 Facebook sdk3.1,用代码创建了一个 Facebook 对象facebookobj = [[Facebook alloc] initWithAppId:appID andDelegate:self];
并调用[facebookobj authorize:permissions]
。
同样在 Facebook.mi 的源代码中修改了要使用的授权方法,[self.session openWithBehavior:FBSessionLoginBehaviorForcingWebView....]
以便我的登录始终使用 inapp-webview 。
用户输入他的凭据并按登录后,我会回电- (void)fbDidLogin{........}
。在这种方法中,当我检查会话状态和 accessToken 时。有时我得到意想不到的结果(访问令牌为 nil,会话状态为 FBSessionStateCreatedOpening),大多数时候我登录(访问令牌存在且状态为 FBSessionStateOpen)。
这种行为可能吗?如果我最终处于 FBSessionStateCreatedOpening 状态,我应该关闭会话还是使其无效?我认为 Facebook sdk 只会在会话状态打开时给我“fbDidLogin”回调。
注意:我还在[FBSsession setActiveSession:facebookobj.session];
fbDidLogin 中设置了。