在模拟器上可以使用Google登录,但在Android设备上无法使用,这与Flutter有关。

3

我正在开发一款使用firebase进行谷歌登录的flutter应用。在模拟器上,谷歌登录功能运行良好,但当我导出签名的bundle并在实体设备上测试时,它不起作用。我需要在gradle文件中添加什么吗?请有人指导一下我吗?

5个回答

3
这是因为releasedebug的SHA1和SHA256不同。因此,既然我们只添加了debug密钥,我们还需要添加release密钥。为此,我们需要打开Google Play Console>(单击您的应用程序)>设置在左侧窗格中>应用完整性。在那里,您将获得应用签名密钥证书上传密钥证书。从两个密钥中复制SHA1SHA256,并粘贴到Firebase项目下的项目设置中。enter image description here

3

前往Play商店搜索“App Integrity”

Google play store app integrity

然后
复制SHA密钥并添加到Firebase签名密钥中。

完成以上步骤后,您就可以开始使用了。


2
  1. 在您的firebase项目中添加SHA1和SHA256密钥,同时在设置SHA密钥时添加适当的电子邮件ID。
  2. 再次下载google-services文件
  3. 重新构建项目
  4. 如果您计划在Play商店上发布应用程序,则需要设置OAuth。

我已经在那里添加了密钥。但是,我还没有设置OAuth。你能否请指导我如何做?非常感谢。 - undefined
这将有助于您的应用程序进行OAuth和Playstore相关设置。https://dev59.com/eFQJ5IYBdhLWcg3wHSA8#54696963此链接将对OAuth和凭据非常有帮助 https://console.developers.google.com/apis/credentials/consent/edit - undefined

1
你需要将发布的sha-1添加到Firebase。在Android Studio中运行签名报告以获取sha-1,并将其添加到Firebase项目的“项目概述”设置中。

1

我找到了一个解决方案。实际上,在将应用程序上传到Google Play并作为测试人员安装后,Google登录无法正常工作。 问题在于Google Play生成了不同的SHA1和SHA256密钥。但是,我只添加了来自Android Studio的密钥,这导致了问题。 当我从Google Play应用程序中找到SHA1和SHA256密钥并将它们添加到Firebase时,问题得到了解决。 非常感谢尊敬的人们提供的帮助。


你是否将从Google Play获取的密钥与从Android Studio生成的密钥添加在一起,或者删除旧密钥并仅使用来自Play商店的密钥...请帮助我。 - undefined
我们不需要移除任何东西,只需添加新的钥匙。 - undefined

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接