SwiftでFirebaseを使ってGoogleログインするときにでたエラーの解決方法です。
原因
出たエラーはこちら
Terminating app due to uncaught exception 'NSInvalidArgumentException',
reason: 'presentingViewController must be set.'
ボタンをクリックしたときグーグル認証されるというもの。
ボタンをタップしたときに上記のエラーが起こる。
googleLogin.py
@IBAction func loginGoogleButton(_ sender: Any) {
GIDSignIn.sharedInstance()?.signIn()
}
解決方法
これを
GIDSignIn.sharedInstance()?.uidelegate = self
こう変える
GIDSignIn.sharedInstance()?.presentingViewController = self
Google Sign inがバージョン5.0.0になったことで色々仕様が変わったようですね。
以下引用
公式ドキュメント
https://developers.google.com/identity/sign-in/ios/release
github
https://github.com/EddyVerbruggen/nativescript-plugin-firebase/issues/1370