将颤振项目发布到 Play 商店后,Firebase Auth 登录不起作用

Posted

技术标签:

【中文标题】将颤振项目发布到 Play 商店后,Firebase Auth 登录不起作用【英文标题】:Firebase Auth Sign-in does not work after releasing flutter project to Play Store 【发布时间】:2021-03-31 11:19:06 【问题描述】:

我在将 android 应用发布到 Play 商店(内部和封闭测试版本)后登录时遇到了问题。基本上,我的登录选项(电子邮件和第三方)不起作用。 Firebase 已连接,因为我可以正确创建帐户并通过应用程序写入 Firestore。如果我遇到错误(密码错误、电子邮件错误等),Firebase 会将错误返回给我。但是,“成功”登录根本不会导致完成登录过程,并且我的应用程序永远停留在该 await 方法上。

在模拟器上运行、直接从 Flutter 在 Android 设备上运行(发布和调试模式)或以任何容量在 ios 上运行时,我都没有问题。

这里发生了什么?我不认为这是我的实际代码,而且作为 Android 发布过程的一部分,我一定遗漏了一个步骤。我已请求互联网和访问网络状态的权限,SHA 密钥应该都适用于 Firebase(添加了调试、发布和 Play 商店密钥),并且我的 Firebase 依赖项是最新的。

【问题讨论】:

试试这个link。如果这项工作让我知道将其作为答案发布,以便您批准。 它不起作用。我已将其添加到 Firebase,然后我替换了 google-services.json 文件。 不要从谷歌控制台而不是从firebase更改它。 好的,我肯定有。我有 3 个密钥(和 3 个 OAuth 客户端)对应于调试、发布以及用于发布的奇怪的 Google Play 密钥。 有谁知道我是否需要 SHA 256 密钥? 【参考方案1】:

这不是 SHA-1 问题。它与在构建期间缩小代码有关。见https://***.com/a/65511857/14834849

【讨论】:

【参考方案2】:

当应用上传到 Google Play 时,会生成一个新的 SHA1 代码

您所要做的就是复制新代码并将其添加到 Firebase 项目中。

当您使用 SHA-1 签署您的 APK 并上传仅由您签署的 APK,但根据新的更新,它也由 Google Play 签署以提高安全性。

您可以查看this。

【讨论】:

我已经做到了。我在 Firebase 中有 3 个与我的 Android 应用关联的 SHA-1 密钥。 1 是我原来的调试密钥,1 是我电脑上 keystone 的发布密钥,1 是来自 Google Play 的那个密钥。生成了一个新的 google-services json 并将其添加到我的项目中,但存在同样的问题。 这解决了卡住几天后的问题,非常感谢。 Play Console 中的应用 SHA-1 位于:发布 > 设置 > 应用完整性

以上是关于将颤振项目发布到 Play 商店后,Firebase Auth 登录不起作用的主要内容,如果未能解决你的问题,请参考以下文章

如何为 Google Play 商店签署我的颤振应用程序?

在 Play 商店中将 Flutter 应用程序从旧版本更新到新版本

如何将颤振应用程序从 android studio 导出到 Xcode?

语言更改在上传到 Google Play 商店之前有效,但在上传到 Play 商店后无效。为啥?

在 Play 商店中发布后,Google 身份验证不起作用

Expo 将 App 更新到 Play 商店 - 密钥错误