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所需的所有方法.我附加的屏幕截图相同.

相关文章

UITabBarController 是 iOS 中用于管理和显示选项卡界面的一...
UITableView的重用机制避免了频繁创建和销毁单元格的开销,使...
Objective-C中,类的实例变量(instance variables)和属性(...
从内存管理的角度来看,block可以作为方法的传入参数是因为b...
WKWebView 是 iOS 开发中用于显示网页内容的组件,它是在 iO...
OC中常用的多线程编程技术: 1. NSThread NSThread是Objecti...