我只是在检查 FBSession 的状态
- (BOOL)hasValidSession {
return (self.session.state == FBSessionStateOpen)
}
有时状态会短暂更改为 FBSessionStateOpenTokenExtended,这将返回 NO,这会降低我的登录模式。当我再次单击连接时,它会使应用程序崩溃以尝试重新建立活动的 facebook 会话。所以我把它改成了
- (BOOL)hasValidSession {
if (self.session.state == FBSessionStateOpen || self.session.state == FBSessionStateOpenTokenExtended) {
return YES;
}
else {
return NO;
}}
到目前为止,我的上述方法有效,但它似乎是一个 hack……在您的应用程序中检查有效会话的最佳普遍方法是什么?