如何确定用户是不是已使用 Graph API 从 Facebook iOS 注销?

Posted

技术标签:

【中文标题】如何确定用户是不是已使用 Graph API 从 Facebook iOS 注销?【英文标题】:How to find out if user has logged out from Facebook iOS using Graph API?如何确定用户是否已使用 Graph API 从 Facebook iOS 注销? 【发布时间】:2016-04-07 23:18:02 【问题描述】:
self.logInButton = FBSDKLoginButton()
self.logInButton.loginBehavior = FBSDKLoginBehavior.Native 
//Above Uses Facebook ios setting
//login if User is logged in from their device setting

if FBSDKAccessToken.currentAccessToken() == nil 
    //User is not logged in
 else  
    //User is logged in

我使用上面的代码来确定用户是否已经登录。 上述代码一直有效,直到用户未从 Web 注销或 iOS Facebook 从设置中登录

如果发生任何一种情况,我需要找出方法。我想知道 Facebook SDK 是否注册某种通知以了解登录状态是否已更改。

如果有人从 Facebook 而不是我的应用程序注销,FBSDKLoginButtonDelegate 会触发“loginButtonDidLogOut”吗?

【问题讨论】:

【参考方案1】:

是的。使用 Facebook 登录委托方法。

这是 Objective-C 但方法调用应该类似: - (void) loginButtonDidLogOut:(FBSDKLoginButton *)loginButton;

https://developers.facebook.com/docs/reference/ios/current/protocol/FBSDKLoginButtonDelegate

【讨论】:

即使用户没有使用我的应用程序注销,这也能正常工作吗? 是的。这只会告诉您用户未登录 facebook。该按钮将从说注销更改为使用 facebook 登录。这将允许用户重新登录 facebook,您也可以与代表核实。

以上是关于如何确定用户是不是已使用 Graph API 从 Facebook iOS 注销?的主要内容,如果未能解决你的问题,请参考以下文章

如何通过 Graph API 将用户添加到租户?

如何获取应用程序用户是不是喜欢新 Graph Api 版本 >= 2.0 的应用程序页面

对 Graph Api 使用用户名-密码流是不是安全?此流是不是属于 Oauth 实现

Facebook 'Friends.getAppUsers' 使用 Graph API

如何使用 iPhone 中的 Graph API 在 Facebook 上上传照片?

无法在Logic Apps调用Graph API中设置hideFromAddressLists