【问题标题】:Reset Facebook Token Reference - Facebook SDK 4.0重置 Facebook 令牌参考 - Facebook SDK 4.0
【发布时间】:2019-05-24 19:42:32
【问题描述】:

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

[FBSession.activeSession closeAndClearTokenInformation];

自从更新到 4.0 后,这不再有效。 FBSession.activeSession 已更改为 [FBSDKAccessToken currentAccessToken]

但是,我找不到适用于最新版本的 closeAndClearTokenInformation 的最新版本。有什么建议吗?

【问题讨论】:

    标签: ios objective-c facebook-sdk-4.0


    【解决方案1】:
    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,该模式设置为纵向模式。我不确定是否可以更改此设置。

    【讨论】:

    • 为什么要包含login.loginBehavior = FBSDKLoginBehaviorWeb;
    • 作为注释,第一个选项无需 login.loginBehavior = FBSDKLoginBehaviorWeb; 即可工作。如果您需要使用此附加行,我认为您设置了错误的 SDK。
    • login.loginBehavior = FBSDKLoginBehaviorWeb; 的原因是当您使用浏览器模式时,会话与 safari 的会话共享,并且您永远不会被注销,直到用户从 safari 注销。但是如果你使用web模式,你会成功登出。
    • 我强调 login.loginBehavior = FBSDKLoginBehaviorWeb; 不要与 Safari 应用程序共享令牌。将令牌保留在您的应用中。
    【解决方案2】:

    Swift 2+ 简单解决方案

    FBSDKLoginManager().logOut()
    

    Swift 5+ 简单解决方案

    LoginManager().logOut()
    

    【讨论】:

    • LoginManager().logOut() 获取最新的 swift Facebook Lib
    • @VinodSobale no
    【解决方案3】:

    在 swift 中,您可能需要执行以下操作以完全关闭会话:

    import FacebookCore
    import FacebookLogin
    
    //...
    
    //in your method:
    
    let fbLoginManager = LoginManager()
    fbLoginManager.logOut()
    AccessToken.current = nil
    UserProfile.current = nil
    

    【讨论】:

      猜你喜欢
      • 2014-10-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-06-17
      • 2013-02-11
      • 1970-01-01
      相关资源
      最近更新 更多