ios – FBSDKAccessToken currentAccessToken在登录后没有被更新

前端之家收集整理的这篇文章主要介绍了ios – FBSDKAccessToken currentAccessToken在登录后没有被更新前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我实现了一个完美的Facebook登录按钮.但是,用户成功登录到Facebook并返回应用后,[FBSDKAccessToken currentAccessToken]返回NO.我添加了一个观察者,看看我想要的代码是否在返回到应用程序后运行:
-(void)viewDidLoad
{
   [[NSNotificationCenter defaultCenter] addObserver:self   selector:@selector(checkLogIn)name :UIApplicationWillEnterForegroundNotification object:nil];
}
-(void)checkLogIn
 {
         NSLog(@"IN CHECK LOG IN");

        if ([FBSDKAccessToken currentAccessToken]) {

            NSLog(@"Access Token Activated");

        }
 }

并且登录后,当我返回到应用程序checkLogIn方法调用,但是[FBSDKAccessToken currentAccessToken]仍然返回NO.
但是,当我按下iPhone上的主页按钮后,它会变为YES,然后返回到应用程序.

如何立即更新,所以我可以向用户显示另一个视图控制器?

更新:
我找到了在回到应用程序后执行正确代码方法.关键是使用FBSDKAccessTokenDidChangeNotification是Notification Center.所以最终的结果将是这样的:

[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(checkLogIn) name: FBSDKAccessTokenDidChangeNotification object:nil];

这样,令牌将被更新,它将工作.

解决方法

请检查您的appDelegate类并实现FB SDK所需的所有方法.我附加的屏幕截图相同.

猜你在找的iOS相关文章