Google 登录出现异常
Posted
技术标签:
【中文标题】Google 登录出现异常【英文标题】:Google SignIn is getting Exception 【发布时间】:2017-12-13 22:46:17 【问题描述】:我正在处理Google SignIn
。按下登录按钮后,我得到了例外。我也在服用GoogleService-Info.plist
异常是:由于未捕获的异常而终止应用程序 'NSInvalidArgumentException',原因:'您的应用缺少对 以下 URL 方案: com.googleusercontent.apps.337335047637-ciu1dmqo156sdv1idjmm9olljduofdam'
【问题讨论】:
您是否在项目中添加 URL 方案。 如何添加 URL 方案 还要检查您是否在 Google-Info.plist 中添加了客户端 ID。 是的,我下载并添加到我的项目中,我们是否必须在 info.plist 中进行任何更改 【参考方案1】:Google 登录需要将自定义 URL 方案添加到您的项目中。添加自定义方案:
-
打开您的项目配置:双击左侧树视图中的项目名称。从 TARGETS 部分选择您的应用,然后选择 Info 选项卡,然后展开 URL Types 部分。
单击 + 按钮,并为您的反向客户端 ID 添加 URL 方案。要查找此值,请打开 GoogleService-Info.plist 配置文件,然后查找 REVERSED_CLIENT_ID 键。复制该键的值,并将其粘贴到配置页面上的 URL 方案框中。将其他字段留空。
欲了解更多详情,请查看此处。
为您的项目添加 URL 方案
Google Sign in
【讨论】:
【参考方案2】:出现此错误是因为您没有为 Google 登录正确设置 URLScheme。
从 ios9 开始,使用前必须将所有 URLSchemes 列入白名单。否则canOpenURl
抛出错误。
要解决上述问题,您需要在 GoogleInfo.plist
中将您的 URLScheme 列入白名单将以下代码粘贴到 .plist 中
<key>LSApplicationQueriesSchemes</key>
<array>
<string>com.example.foo</string>
<string>com.googleusercontent.apps.337335047637-ciu1dmqo156sdv1idjmm9olljduofdam</string>
<string>com-google-gidconsent-google</string>
<string>com-google-gidconsent-youtube</string>
<string>com-google-gidconsent</string>
<string>com.google.gppconsent.2.4.1</string>
<string>com.google.gppconsent.2.4.0</string>
<string>googlechrome</string>
<string>googlechrome-x-callback</string>
</array>
【讨论】:
以上是关于Google 登录出现异常的主要内容,如果未能解决你的问题,请参考以下文章
无法使用 Google Plus 登录,出现 com.google.android.gms.common.api.ApiException: 10:
更新到新的 Firebase 后出现异常 java.lang.NoClassDefFoundError: com.google.firebase.FirebaseOptions