【问题标题】:Ionic and Firebase v3 google auth errorIonic 和 Firebase v3 谷歌身份验证错误
【发布时间】:2016-10-30 07:13:41
【问题描述】:
我正在尝试将 Google-plus 登录添加到我的应用程序中,但无论我做什么,我都无法让它在真正的 Android 设备上运行。
到目前为止,我能够从这个插件中获得 idToken
cordova-plugin-googleplus
使用 Firebase 的 singInWithCredential(idToken) 我收到一条错误消息:
此应用由其托管域标识,无权通过提供的 API 密钥使用 Firebase 身份验证。在 Google API 控制台中检查您的密钥配置。
我想指出,我遵循了所有安装步骤,SHA1 密钥是正确的,并且我使用的是签名的 APK。
使用 facebook 插件,检索令牌和 signInWithCredential 没有任何问题。
提前致谢!
【问题讨论】:
标签:
ionic-framework
google-plus
firebase-authentication
【解决方案1】:
您的 ionic 应用程序似乎有一些 API 密钥限制。
首先,请检查您正在使用项目的 Firebase 控制台的身份验证部分下的“网络设置”弹出窗口中的 API 密钥。如果您尚未在 API 控制台中更改配置,则此选项应该可以立即使用。
如果这不能解决问题,请转到您的 Firebase 项目的 Google API console 的凭据部分,查找您正在使用的 API 密钥,并检查那里设置了哪些引荐来源网址限制并确保它们得到满足通过您的应用程序。阅读this answer,了解您必须为 Cordova 应用设置 API 密钥限制的几个选项。
【解决方案2】:
在我的 Ionic2 RC1 + Firebase3.5 + AngularFire2.beta5 项目中,我遇到了同样的问题... Google Auth with Popup 在浏览器中有效,但在我的 Android .APK 中无效
注意-我没有在我的应用程序中使用令牌
首先,我将 192.168.1.172 添加到我的 Firebase 控制台授权域列表,并将 <allow-navigation href="http://192.168.1.172:8100"/> 添加到我的 config.xml。
在这之后,我发现installing Cordova InAppBrowser插件彻底解决了我的问题。
我不需要修改我的代码,只需即插即用,就像 David East 在他的 Social login with Ionic blog 中所说的那样。