目录
2、Firebase 对应应用 SHA-1重新设置Google提供的SHA-1
4、登录API所需的客户端ID (web_client_id)问题
原因:SHA-1不正确、凭据设置问题、发送的client_id不正确
1、原因情况
SHA-1是根据包签名生成的一个字符串数据,你要查看自己的apk的包签名具体是什么,是不是用错了包签名?
如果你是发布到谷歌平台的,要检查凭据里的信息是不是都用到了Google Console提供的SHA-1,以及firebase的SHA-1也是要用谷歌提供的。
2、Firebase 对应应用 SHA-1重新设置Google提供的SHA-1
(2023年12月7日更新)升级上传证书可能SHA-1会变化,要对应去修改!
我的情况是上传了Google Console发布(内部测试),这个发布出去后Google自己会生成一个包签名重新签名,所以SHA-1就不正确了(已经不是我们自己的包签名SHA-1了)
https://play.google.com/console
进入google console管理页面,打开你的应用,找到左边的应用完整性
找到这个上传密钥证书,使用它下面里面的SHA-1和SHA-256,填充回对应firebase管理页面的应用配置SHA-1里。
https://console.firebase.google.com/
如果我们不发布到google console,直接打包出apk文件,此时的包签名就是用我们设置的包签名,而不是google给我们的这个了,所以,正常测试不走google发布那流程的话 就用我们自己的SHA-1,否则要用google提供的~
3、Google 凭据配置不正常
(2023年12月7日更新)这个很重要,100%每个人都会漏掉的地方,重新根据下面方法配一下凭证Android应用的SHA-1,使用应用签名密钥证书即可。
https://console.cloud.google.com/
具体是这个凭据的地方:https://console.cloud.google.com/apis/credentials
在第一步获取“上传密钥证书”SHA-1里的上面还有一个应用签名密钥证书
它的SHA-1证书指纹需要填充到
找到你应用包对应的
Android client for xxxxx (auto created by Google Service) |
如果找不到可以自行创建一个Android凭据
软件包名称就是包名, com.xxx.xxx
4、登录API所需的客户端ID (web_client_id)问题
登录发的web_client_id必须是使用
Web client (auto created by Google Service) |
(2023年12月7日1更新)如果没有可以手动创建一个Web应用类型的凭证,它不受应用包名变更影响,只要你这个应用还是使用同样的Google Play工程发布。
这个的客户端ID,并且要将Firebase Authentication配置Google登录那的Web SDK配置设置成这个ID
对应填写上去。
做完上述操作后记得要重新导出google-services.json文件。