重置Facebook令牌参考 – Facebook SDK 4.0

我以前使用以下来清除和重置Facebook访问令牌

[FBSession.activeSession closeAndClearTokenInformation]; 

由于更新到4.0,这不再起作用。 FBSession.activeSession已更改为[FBSDKAccessToken currentAccessToken]

然而,我无法find最新版本的closeAndClearTokenInformation与最新版本的工作。 有什么build议么?

 FBSDKLoginManager *logMeOut = [[FBSDKLoginManager alloc] init]; [logMeOut logOut]; 

要么

 [FBSDKAccessToken setCurrentAccessToken:nil]; [FBSDKProfile setCurrentProfile:nil]; 

注销

然后当你再次login时,请确保设置:

 login.loginBehavior = FBSDKLoginBehaviorWeb; 

像这样:

 FBSDKLoginManager *login = [[FBSDKLoginManager alloc] init]; login.loginBehavior = FBSDKLoginBehaviorWeb; [login logInWithReadPermissions:@[@"user_friends"] handler:^(FBSDKLoginManagerLoginResult *result, NSError *error) { etc... }]; 

我发现文档中的一些信息说FBSDKLoginBehaviorWeb可以用于“kiosk”应用程序; 我想是应用程序devise有不止一个人login到他们的例行公事。

有一件事要注意,这个login方法创build了一个模式化的UIWebView,它被设置为肖像模式。 我不确定是否有可能改变这一点呢。

Swift 2+ 简单的解决scheme

 FBSDKLoginManager().logOut()