Android上的Google SignIn上的APIException 10

问题描述

我正在尝试在我的应用程序中集成G​​oogle登录/身份验证。我遵循了firebase教程/指南中给出的说明,以下内容似乎可以正常工作:

  1. 在UAT上,它具有不同的firebase项目。
  2. 用于生产的Firebase应用在“设置”页面上列出了以下键的SHA1:
  • 内部签名密钥。
  • 上传密钥
  • playstore上的签名密钥。

我的firebase google-services.json文件列出了以上所有三个SHA1。
Google开发人员控制台似乎也已正确设置。

当我通过PlayStore上的“内部应用共享”下载应用时,我仍然设法获得APIEXception 10。即使我从Google云端硬盘链接下载了该应用程序,一切都按预期进行。

任何对此的帮助将是最欢迎的。现在,我已经整整一天都抓挠了头,并尝试了互联网上有关此问题的几乎所有建议。

解决方法

感谢@Alex Mamo的评论。

这个答案是关键:https://stackoverflow.com/a/62763633/350685

要成功运行Firebase身份验证,您需要与您的Firebase帐户关联的4个(而不是3个)SHA-1哈希:

  1. 内部/调试键,因此直接从Android Studio在设备上运行应用程序时,您不会遇到任何问题。
  2. 用于签署应用以进行发布的密钥。
  3. playstore用来对应用进行发布的密钥。
  4. 您可以在上面链接的答案中找到内部应用程序共享密钥。

第2点和第3点的哈希在Play商店的“设置”部分中可用。无需在gradle上运行任何任务。

我认为这并不广为人知,因为开发人员尚未大量使用内部应用程序共享工具(也许吗?)。一旦流行起来,我相信还会有更多。