Facebook 注销在新 SDK 中不起作用

Posted

技术标签:

【中文标题】Facebook 注销在新 SDK 中不起作用【英文标题】:Facebook Logout is not working in new SDK 【发布时间】:2016-03-25 05:59:40 【问题描述】:

每次获得用户的授权屏幕。我无法使用其他用户登录。我认为问题是,Safari 存储 cookie。

这可能在 Facebook SDK 中存在错误。

【问题讨论】:

【参考方案1】:

1.清除到 facebookToken

 FBSDKAccessToken.setCurrentAccessToken(nil)
 FBSDKProfile.setCurrentProfile(nil)

2。注销 FBSDKLoginManager。

let manager = FBSDKLoginManager()
manager.logOut()

注意:如果您选择 FBSDKLoginBehavior 是在 UIWebView 中打开 Facebook 登录页面的 Web,它会从应用程序中注销。如果您选择 Native,则在 safari 浏览器中打开 Facebook 登录页面并将数据存储在 safari 中。

let loginView : FBSDKLoginManager = FBSDKLoginManager()
loginView.loginBehavior = FBSDKLoginBehavior.Web

【讨论】:

谢谢..FBSDKLoginBehavior.Web 解决了我的问题。【参考方案2】:

你必须导入FBSDKLoginKit 然后:

 FBSDKAccessToken.setCurrentAccessToken(nil)
 FBSDKProfile.setCurrentProfile(nil)

let manager = FBSDKLoginManager()
manager.logOut()

【讨论】:

【参考方案3】:

打开 Safari,访问 facebook.com 网站并注销。我认为它是移动网站顶部的第 6 个选项卡,注销选项位于底部。

编辑:

无法从第三方应用程序读取 Safari cookie, 相反,它会使用户隐私陷入陷阱。截至目前,这 可能是使用不同凭据登录的可能方式 次。

和[FBSDKAccessToken setCurrentAccessToken:nil];这可以是 只是将 sdk 的 accesstoken 重置为 nil,从而启用“注销” 到“使用 Facebook 登录”并在再次单击时重新启动 safari facebook 授权。

【讨论】:

我只想从我的应用程序中注销 safari。

以上是关于Facebook 注销在新 SDK 中不起作用的主要内容,如果未能解决你的问题,请参考以下文章

IOS Facebook好友邀请在facebook sdk中不起作用

Facebook 登录在 IOS SDK 中不起作用

Facebook 应用邀请在使用 Facebook SDK 4.X 的 iOS8 中不起作用?

获取 xmpp_login 访问令牌在 Facebook iOS SDK 中不起作用

Facebook登录回调在钛合金中不起作用

Facebook iOS SDK 3.1.1“closeAndClearTokenInformation”方法不起作用