第三方登录 IOS11 - GIDSignInButton



我正在测试 IOS 11 更新,并注意到我使用 Google 登录的 Firebase 身份验证不起作用

我收到错误

A problem repeatedly occurred on https://accounts.google.com/signin/oauth? client_id nosignup pproval_state=???? passive=????

我可以看到许多关于苹果删除部分社交媒体集成的新闻报道 苹果在iOS 11中停止第三方通过社交媒体登录应用程序

但是我找不到任何针对开发人员的东西,说明我们应该怎么做。

谷歌登录网页没有提到我可以看到的关于IOS11谷歌登录iOS的任何内容

Firebase 也没有

谁能澄清这些库在IOS11中是否仍然适用,或者提供讨论这些问题的链接。

------添加指向 Firebase 示例应用的链接-----------

Firebase 示例应用程序在 Google 登录时也失败,我尚未测试所有其他应用程序 https://github.com/firebase/quickstart-ios/authentication/AuthenticationExampleSwift

的确,苹果已经删除了对某些第三方社交网站(FB,Flickr,Twitter)的特殊处理,但谷歌从未在该列表中。因此,您的错误不应与此相关。

您正在使用的库依赖于一种采用良好的机制来提供应用内上下文外 OAuth 登录。基本上,该应用程序会向SFSafariViewController提供OAuth页面,然后在授权完成后,它会打开一个特殊的URL,该URL被转发回应用程序,然后关闭SFSafariViewController。我知道谷歌和FB肯定在他们的SDK中这样做。

在 iOS 11 中,Apple 提供了一种新机制来执行此工作流程。它被称为SFAuthenticationSession。它们不会弃用当前支持的方法,您可能会看到您使用的库迁移到适用于 iOS 11 设备的这种新机制。

您的问题的答案是这些库仍然相关,您应该继续调查您的错误(显然,请确保您在iOS 10上没有收到错误)

更新

为了回应进一步的问题,我从提供的链接中启动了一个示例项目。我在模拟器上遇到了同样的问题,但是当我在带有iOS 6 beta 6的旧iPhone 3上运行它时,它工作正常。因此,在运动中,这似乎是一个模拟器错误。一种理论可能是模拟器依赖于某些库的主机操作系统,因此如果您运行的是High Sierra,则可能不会遇到此问题。

我尝试摆弄设置中的各种开关以使页面正确加载无济于事。看起来行动过程是:

  1. 提交反馈

  2. 在设备上进行测试,直到模拟器修复(毕竟这是测试版软件)

更新 #2

模拟器问题似乎已在Xcode 9 beta 4中修复。 🎉

相关内容

  • 没有找到相关文章

最新更新