Я нахожусь в процессе интеграции пользовательского интерфейса Firebase Auth в свое приложение, и по какой-то причине я продолжаю получать эту ошибку:
Type 'LoginViewController' does not conform to protocol 'FUIAuthDelegate'
Прежде чем вы начнете минусовать меня до забвения, я обещаю, что я не идиот. FUIAuthDelegate имеет только одну обязательную функцию, которая указана ниже в инспекторе задач:
Protocol requires function 'authUI(_:didSignInWith:error:)' with type '(FUIAuth, User?, Error?) -> Void'; do you want to add a stub?
А потом это:
Candidate has non-matching type '(FUIAuth, User?, Error?) -> ()'
Дело в том, что у меня есть эта функция в моем классе, и я совершенно уверен, что соответствую протоколу... вот мой код ViewController:
import UIKit
import FirebaseAuth
import FirebaseAuthUI
typealias FIRUser = FirebaseAuth.User
class LoginViewController: UIViewController {
@IBOutlet weak var loginButton: UIButton!
override func viewDidLoad() {
super.viewDidLoad()
}
@IBAction func loginButtonTapped(_ sender: Any) {
print("Login Button Tapped")
guard let authUI = FUIAuth.defaultAuthUI()
else { return }
authUI.delegate = self
let authViewController = authUI.authViewController()
present(authViewController, animated: true)
}
}
extension LoginViewController: FUIAuthDelegate {
func authUI(_ authUI: FUIAuth, didSignInWith user: User?, error: Error?) {
print("")
}
}
Я сумасшедший? Может кто-нибудь сказать мне, что мне здесь не хватает?