我以前使用以下内容清除和重置Facebook访问 token

[FBSession.activeSession closeAndClearTokenInformation];

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

但是,我找不到最新版本的 closeAndClearTokenInformation ,可以使用最新版本。有什么建议?

最佳答案

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

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

登出

然后,当您再次登录时,请确保进行以下设置:
login.loginBehavior = FBSDKLoginBehaviorWeb;

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

我在文档中找到了一些信息,说FBSDKLoginBehaviorWeb可用于“信息亭”应用;我猜这些应用程序的设计目的是要让一个以上的人例行登录。

需要注意的一点是,此登录方法创建了一个模式UIWebView,该模式已设置为纵向模式。我不确定是否可以更改此设置。

10-08 01:18