Google登录在iOS 13 GM上失败

时间:2019-09-12 12:06:09

标签: ios firebase google-signin ios13

我的应用程序具有“使用Google登录”按钮。当我尝试在iOS 13.0上登录时,GM GIDSignInDelegate didSignInForUser:WithError:返回此错误:

Error Domain=com.google.GIDSignIn Code=-1 "The operation couldn’t be completed. (org.openid.appauth.general error -3.)"

我不知道如何解决此问题。我正在将Google Sign In 5.0.0用作Firebase 6.8.1的一部分。

6 个答案:

答案 0 :(得分:3)

以下是成功拥有登录视图的解决方案。出现ViewController的视图后,调用signin方法,但不会以编程方式将其关闭。我刚刚在IOS 13中实现了它,并且效果很好。

override func viewDidAppear(_ animated: Bool) {
    super.viewDidAppear(animated)
    GIDSignIn.sharedInstance()?.delegate = self
    GIDSignIn.sharedInstance()?.presentingViewController = self
    GIDSignIn.sharedInstance()?.scopes = [kGTLRAuthScopeDrive]
    GIDSignIn.sharedInstance()?.prepareForInterfaceBuilder()
    GIDSignIn.sharedInstance()?.signIn()
}

答案 1 :(得分:2)

我知道了! AppAuth-iOSGoogleSignIn SDK的开放源代码依赖项,已于8月从1.1.0更新到1.2.0,其中包括this iOS 13支持。因此,您需要运行pod update GoogleSignInAppAuth更新为1.2.0。 GoogleSignIn SDK本身从5.0.0开始就没有更新,这让我感到困惑。

答案 2 :(得分:1)

我下载了Firebase 6.9.0 SDK zip,并遇到了同样的问题。自述文件指示捆绑的AppAuth版本为1.2.0。我可以通过将AppAuth更新为主版本来解决此问题。

具体地说,我删除了 Firebase随附的AppAuth框架,而是使用迦太基构建了AppAuth。

答案 3 :(得分:1)

供其他用户发现此问题时参考:

Google在GoogleSignIn v5.0.1中修复了此问题。将应用更新到iOS 13时,您可能还必须更新GoogleSignIn SDK。

答案 4 :(得分:0)

如果您使用的是迦太基的Firebase 6.9.0,请将github“ openid / AppAuth-iOS”“ master”添加到您的Cartfile中任何Firebase条目下方。

答案 5 :(得分:0)

对不起,如果错了。

我认为如果没有定位,就会发生此错误。

不仅支持13,而且支持10。

解决方案,但不要使您的Pod版本保持最新。

4.4.0。

pod 'GoogleSignIn', '4.4.0'

这个版本没问题。

我预料到了错误。小于

新版本可能会使用xcode11.3生成的某些代码, 这样就可以了,现有的可能会在13点停止处理