Firebase身份验证-电话-“INVALID_CERT_HASH”
当我尝试在本地 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): }
我参考了stackoverflow评论。但我确实在项目中说明了我的 SHA-1 和 SHA-256。由于我的 SHA-1 和 SHA-256 存在,我在位于密钥库的文件夹中运行以下命令。一切正常。谁能告诉我我错过了什么?
keytool -list -v -keystore my_keystore.jks
回答
要解决此错误,您需要将密钥库 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 后问题仍然存在,请确保以下几点:
- 再次更改 google-services.json 文件。
- 在设置中删除应用程序并添加一个具有正确 SHA1 的新应用程序