Firebase 身份验证 - 电话 - “INVALID_CERT_HASH”

CLK*_*LKH 5 android firebase-authentication flutter

当我尝试在本地 android 设备中运行电话身份验证时出现以下错误。

[GetAuthDomainTask] Error getting project config. Failed with {
E/FirebaseAuth(25345):   "error": { 
E/FirebaseAuth(25345):     "code":400, 
E/FirebaseAuth(25345):     "message": "INVALID_CERT_HASH",
E/FirebaseAuth(25345):     "errors": [ E/FirebaseAuth(25345):       {
E/FirebaseAuth(25345):         "message": "INVALID_CERT_HASH",
E/FirebaseAuth(25345):         "domain": "global",
E/FirebaseAuth(25345):         "reason": "invalid"
E/FirebaseAuth(25345):       } 
E/FirebaseAuth(25345):     ]
E/FirebaseAuth(25345):   } 
E/FirebaseAuth(25345): }
Run Code Online (Sandbox Code Playgroud)

我参考了stackoverflow评论。但我确实在项目中说明了我的 SHA-1 和 SHA-256。由于我的 SHA-1 和 SHA-256 存在,我在位于密钥库的文件夹中运行以下命令。一切正常。谁能告诉我我错过了什么?

keytool -list -v -keystore my_keystore.jks

Roh*_*hto 6

要解决此错误,您需要将密钥库 SHA1 和 SHA56 以及调试 SHA1 和 SHA256 添加到 fireabse 控制台。

这意味着两个 SHA1 和两个 SHA256

对于调试密钥,使用https://developers.google.com/android/guides/client-auth?authuser=1获取密钥,使用./gradlew signingReport.\gradlew signingReportif 在 Windows 中获取调试密钥。

对于发布密钥,使用密钥库资源管理器查看 SHA1 和 SHA256。

如果更改 SHA1 和 SHA256 后问题仍然存在,请确保以下几点:

  1. 再次更改 google-services.json 文件。
  2. 在设置中删除应用程序并添加一个具有正确 SHA1 的新应用程序