Firebase for android突然无法在我的测试设备中运行

Ros*_*tam 9 android firebase firebase-authentication firebase-realtime-database

我正在使用Firebase身份验证和实时数据库构建应用程序.在昨天之前,测试时我的设备工作正常.但我现在甚至无法使用Firebase登录,但该应用程序正在处理我朋友的其他设备.

这里的实际问题是什么?测试app你自己的真实设备有任何限制吗?是否超出某种限制?

我尝试卸载应用程序并重新安装,从firebase数据库中删除用户帐户.但仍然没有工作.

谢谢!!

小智 1

我遇到了同样的问题并找到了解决方案。

Google 登录在模拟器或连接的测试设备上工作正常,但在从 google play 商店下载 firebase 应用程序的实际设备上则不行。这是因为您的 android studio 生成的 apk 文件是由默认调试证书指纹签名的,而您在 Google Play 商店上发布的应用程序是由不同的证书指纹签名的。

两个证书指纹都应在 Firebase 控制台中列入白名单,否则 google 登录将无法对用户进行身份验证。

因此,要解决此问题,请执行以下两个步骤。

  1. 在 MAC 上使用以下命令生成发布证书指纹

    MAC:keytool -exportcert -list -v \ -alias your-key-name-keystorepath-to-production-keystore

您将得到如下输出:

keytool -exportcert -list -v \ -alias aliasName -keystore /pathToKeystore/keyStore.jks 输入密钥库密码: 创建日期:2017 年 5 月 27 日 条目类型:PrivateKeyEntry 证书链长度:1 证书指纹:MD5: 11:D0:F1: F6:26:F3:44:77:88 SHA1:D6:44:55:66:77:88:99:55:HH:AC:DB:17:8A

其中 SHA1: 是您的指纹密钥,复制它。

有关如何在 MAC/WINDOWS 上生成指纹的更多信息,请访问https://developers.google.com/android/guides/client-auth

  1. 将上面的 SHA1 密钥粘贴到您的 firebase“项目设置”并保存。Google 登录现在应该可以正常工作了。

要了解有关其工作原理的更多信息,请访问https://developer.android.com/studio/publish/app-signing.html