[英]Login different user in Facebook SDK for iOS
我在我的应用程序中使用 Facebook SDK for iOS 版本 4.14。 我们正在使用 facebook SDK 来允许用户注册。
我们有营销团队的一名成员 Say M,他将在他的手机上安装应用程序来注册新用户。
假设用户A使用他的fb详细信息注册了该应用程序,并且他已成功添加到系统中。
用户 A 完成注册后,他从应用程序注销。
现在这是我面临的问题,当 M 访问另一个用户 B 时,如果他点击使用 facebook fb 会话登录仍然说,用户 A 已经授予该应用程序的权限。
我想要的是 fb 必须刷新所有 fb 令牌,会话,以便 M 可以注册许多新用户。
我正在我的应用程序中处理这些情况
var fbLoginManager : FBSDKLoginManager = FBSDKLoginManager()
@IBAction func BtnLogout(sender: AnyObject) {
FBSDKAccessToken.setCurrentAccessToken(nil)
FBSDKProfile.setCurrentProfile(nil)
FBSession.activeSession().closeAndClearTokenInformation()
fbLoginManager.logOut()
let loginManager = FBSDKLoginManager()
loginManager.logOut()
let deleteAllpermission = FBSDKGraphRequest(graphPath: "me/permissions/", parameters: nil, HTTPMethod: "DELETE")
deleteAllpermission.startWithCompletionHandler({(connection,result,error)-> Void in
print("Success")
// in here call your login action method, it called every time user login permission
})
}
只需添加以下代码行:
loginManager.loginBehavior = .web
并且每次登录都可以使用新凭据进行身份验证
在这里,我们可以做两件事:1。当我们从应用程序注销时基本的。 打开浏览器/ safari并从facebook注销。 2.我们可以做的第二件事是从应用程序注销我们可以清除权限:------------------------------- - - -码 - - - - - - - - - - - - - - - - - - - -
let mypermission = FBSDKGraphRequest(graphPath: "me/permissions/", parameters: nil, HTTPMethod: "DELETE")
mypermission.startWithCompletionHandler({(connection,result,error)-> Void in
print("Success")
// in here call your login action method, it called every time user login permission
})
(新泽西州)
不幸的是,目前无法在用户登录后在登录对话框中切换帐户,Facebook 没有对 Facebook 登录的多用户支持,他们可能会在未来添加。
参考: https : //github.com/facebook/facebook-ios-sdk/issues/1147
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.