Я могу успешно аутентифицировать логин с помощью facebook, используя основные процедуры SDK, но у меня возникает некоторая путаница, когда я пытаюсь выполнить аутентификацию с помощью Firebase. Я прочитал документацию и скопировать и вставить код, но я все еще получаю предупреждение, что читаетfacebookLogin.logInWithReadPermissions с проблемами Firebase
'logInWithReadPermissions(_:handler:)' is deprecated: use logInWithReadPermissions:fromViewController:handler: instead facebookLogin.logInWithReadPermissions(["email"], handler: instead.
1) Что такое предупреждение означает, и как я могу это исправить? 2) С помощью сообщений электронной почты и пароля вы видите зарегистрированных пользователей, но как узнать и посмотреть, были ли пользователи зарегистрированы с аутентификацией facebook в базе данных Firebase?
Спасибо за помощь или руководство!
import UIKit
import Firebase
import FBSDKCoreKit
import FBSDKLoginKit
class ViewController: UIViewController, FBSDKLoginButtonDelegate {
let loginButton: FBSDKLoginButton = {
let button = FBSDKLoginButton()
button.readPermissions = ["email"]
return button
}()
override func viewDidLoad() {
super.viewDidLoad()
view.addSubview(loginButton)
loginButton.center = view.center
loginButton.delegate = self
let ref = Firebase(url: "https://my-app.firebaseio.com")
let facebookLogin = FBSDKLoginManager()
facebookLogin.logInWithReadPermissions(["email"], handler: {
(facebookResult, facebookError) -> Void in
if facebookError != nil {
print("Facebook login failed. Error \(facebookError)")
} else if facebookResult.isCancelled {
print("Facebook login was cancelled.")
} else {
let accessToken = FBSDKAccessToken.currentAccessToken().tokenString
ref.authWithOAuthProvider("facebook", token: accessToken,
withCompletionBlock: { error, authData in
if error != nil {
print("Login failed. \(error)")
} else {
print("Logged in! \(authData)")
}
})
}
})
}
func loginButton(loginButton: FBSDKLoginButton!, didCompleteWithResult result: FBSDKLoginManagerLoginResult!, error: NSError!) {
if error == nil {
print("completed login")
self.performSegueWithIdentifier("showNew", sender: self)
}
else {
print(error.localizedDescription)
}
}
func loginButtonDidLogOut(loginButton: FBSDKLoginButton!) {
print("user logged out")
}
func loginButtonWillLogin(loginButton: FBSDKLoginButton!) -> Bool {
return true
}
}
проверить это для немого предупреждений http://stackoverflow.com/questions/32048964/fbsdkloginmanager-code-from-objective- c-to-swift/32049197 # 32049197 –
Facebook добавлен еще один параметр: http://stackoverflow.com/a/33208089/3202193 проверить этот ответ –