Я реализовал вход в Facebook через Firebase, и когда я звоню Auth.auth().signIn()
, я получаю некоторый результат и ошибку. Дело в том, что я не могу найти способ передать эти данные одному из моих взглядов. Я не могу создать функцию обратного вызова, потому что она вызывается автоматически loginButton()
. Как я могу передать этот результат и ошибку одному из моих просмотров?
У меня действительно есть addStateDidChangeListener
, но это не дает мне ошибку для входа в Facebook, скажем так. No permissions
Auth.auth().addStateDidChangeListener({ (auth, user) in
//
})
class Coordinator: NSObject, LoginButtonDelegate {
func loginButton(_ loginButton: FBLoginButton, didCompleteWith result: LoginManagerLoginResult?, error: Error?) {
if error != nil {
// print(error?.localizedDescription)
return
}
if let currentAccessToken = AccessToken.current {
let credential = FacebookAuthProvider.credential(withAccessToken: currentAccessToken.tokenString)
Auth.auth().signIn(with: AuthCredential) { (AuthDataResult?, Error?) in
// pass AuthDataResult and Error to view
}
}
}
func loginButtonDidLogOut(_ loginButton: FBLoginButton) {
try? Auth.auth().signOut()
}
}