Ich bin in der Lage, Anmeldung mit Facebook mit grundlegenden SDK-Verfahren erfolgreich zu authentifizieren, aber ich habe einige Verwirrung, wenn ich versuche, mit Firebase zu authentifizieren. Ich habe durch die Dokumentation gelesen und kopiert und den Code eingefügt, aber ich bin immer noch eine Warnung, dassfacebookLogin.logInWithReadPermissions mit Firebase-Problemen
'logInWithReadPermissions(_:handler:)' is deprecated: use logInWithReadPermissions:fromViewController:handler: instead facebookLogin.logInWithReadPermissions(["email"], handler: instead.
1) liest Was bedeutet diese Warnung und wie kann ich es beheben? 2) Mit E-Mails und Passwort anmelden sehen Sie die registrierten Benutzer erstellt, aber woher weiß ich und sehen, ob Benutzer mit Facebook-Authentifizierung in der Firebase DB registriert wurden?
Danke für jede Hilfe oder Richtung!
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
}
}
Prüfung dies für stille Warnungen http://stackoverflow.com/questions/32048964/fbsdkloginmanager-code-from-objective- c-to-swift/32049197 # 32049197 –
Facebook ist ein weiterer Parameter hinzugefügt: http://Stackoverflow.com/a/33208089/3202193 Überprüfen Sie diese Antwort –