我正在 iOS 应用程序中实现 fb 登录,想要在同一应用程序中使用不同的 fb 帐户登录。
我使用 cocoapods 安装了 sdk,没有使用任何第三方库。快速 4、Xcode 9、
让经理 = LoginManager()
func loginButton(_ loginButton: FBLoginButton, didCompleteWith result: LoginManagerLoginResult?, error: Error?) {
if (AccessToken.current == nil){
//loginButton.loginBehavior = .browser
DispatchQueue.main.async(){
// LoginManager.init(loginBehavior: .web, defaultAudience: .everyone)
print(LoginBehavior.self)
self.manager.logIn( permissions: [ .publicProfile, .email ], viewController: self){(result) in
switch result {
case .cancelled:
print("user cancelled login process")
break
case .failed(let err):
print("login failed with error: \(err.localizedDescription)")
break
case .success(let grantedPermissions, let declinedPermissions, let accessToken):
print(accessToken)
//get user profile
}
}
}
print("login")
} else {
print("user is already Logged in")
}
}
func loginButtonDidLogOut(_ loginButton: FBLoginButton) {
AccessToken.current = nil
manager.logOut()
}
Run Code Online (Sandbox Code Playgroud)
我可以登录和注销。但下次尝试登录时它不会要求我输入密码。意味着我无法使用不同的 Facebook 帐户登录。
同样在 AppDelegate 文件中,我在实现 fbsdk 函数时遇到错误:
func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {
SDKApplicationDelegate.shared.application(application, didFinishLaunchingWithOptions: launchOptions)
return true
}
func application(_ app: UIApplication, open url: URL, options: [UIApplication.OpenURLOptionsKey : Any] = [:]) -> Bool {
return SDKApplicationDelegate.shared.application(app, open: url, options: options)
}
Run Code Online (Sandbox Code Playgroud)
当您登录 Facebook 应用程序或移动浏览器时,它会保持活动会话,直到您明确注销为止。当任何用户尝试在第三方应用程序中使用 Facebook 登录时,如果用户从 Facebook 应用程序或通过移动浏览器中的网站登录,则不会要求用户登录,并且将直接使用已登录的帐户。您必须从 Facebook 应用程序或移动浏览器注销才能使用其他帐户登录。从您的应用程序第一次开始,如果用户登录 Facebook 并输入 Facebook 凭据,那么它将将该会话保存在移动浏览器或 Facebook 应用程序(如果可用)中,因此下次它不会再次要求提供凭据。
调用以下函数来注销:
FB.logout(function(response) {
// user is now logged out
});
Run Code Online (Sandbox Code Playgroud)
请参考以下链接中注销场景的不同情况:
https://developers.facebook.com/docs/reference/javascript/FB.logout
希望这对您有帮助。
| 归档时间: |
|
| 查看次数: |
2885 次 |
| 最近记录: |