iOS:无法注销 Facebook 用户并再次要求输入电子邮件和密码
Posted
技术标签:
【中文标题】iOS:无法注销 Facebook 用户并再次要求输入电子邮件和密码【英文标题】:iOS: unable to logout Facebook user and ask for email and password again 【发布时间】:2018-03-26 23:51:46 【问题描述】:我在第一次登录后无法切换用户。我尝试使用
loginManager.logOut
但我一直返回到同一屏幕,没有退出选项。我如何让它再次要求我输入电子邮件和密码?
【问题讨论】:
Using Swift Cocoapods 5.5.0 同样的问题...你找到任何解决方案了吗? @MXV 【参考方案1】:使用以下代码
[FBSession.activeSession closeAndClearTokenInformation];
[FBSession setActiveSession:nil];
【讨论】:
【参考方案2】:还有另一种解决方案。像这样改变 loginManager 的登录行为
let loginManager = LoginManager()
loginManager.loginBehavior = .browser
每次用户退出时都会打开webview提示输入用户名和密码。
然后使用代码登录用户
loginManager.logIn(readPermissions: [.publicProfile, .email], viewController: self, completion: (loginResult) in
switch loginResult
case .failed(let error):
print(error)
case .cancelled:
print("User cancelled login.")
case .success(let grantedPermissions, let declinedPermissions, let accessToken):
print(grantedPermissions)
print(declinedPermissions)
print(accessToken)
print("Logged in!")
)
【讨论】:
【参考方案3】:试试这个
FBSDKLoginManager *login; //Global object for same class
login = [[FBSDKLoginManager alloc] init]; //when tap on login with Facebook
// for logout
[FBSDKAccessToken setCurrentAccessToken:nil];
[FBSDKProfile setCurrentProfile:nil];
[login logOut];
【讨论】:
以上是关于iOS:无法注销 Facebook 用户并再次要求输入电子邮件和密码的主要内容,如果未能解决你的问题,请参考以下文章
调用 facebook ios sdk 的注销功能未清除用户凭据
使用 facebook SDK for ios 6 实现 Facebook 注销