在Firebase中更新SHA-1和SHA-256密钥后是否必须重新下载google-services.json
问题解答
核心结论
在Firebase控制台新增/修改绑定的SHA-1、SHA-256密钥时,不需要重新下载更新google-services.json文件。
原理说明
google-services.json文件仅存储Firebase项目的基础静态配置,包括项目ID、应用包名、通用API密钥、服务基础标识等,不会存储任何你在控制台绑定的SHA密钥信息,所有SHA密钥的校验逻辑完全在Google云端完成。- Google SSO的签名校验逻辑为:客户端发起登录请求时上传应用当前的签名SHA值,Google云端将该值与你在Firebase控制台绑定的SHA列表做匹配,匹配通过即可正常使用服务,该过程不涉及本地
google-services.json的校验。
对过往操作的解释
你之前修改Debug/Release密钥库的SHA后需要更新google-services.json才能正常使用,属于巧合的误关联:大概率是你修改SHA的同时,同步调整了其他需要更新配置文件的操作(比如修改了API密钥、调整了OAuth客户端ID、变更了应用包名、开启了新的Firebase服务等),才会产生「修改SHA必须更新json」的误解。
需更新google-services.json的场景
只有出现以下配置变更时,才需要重新下载最新的配置文件:
- 变更了应用的包名/Application ID
- 重置了Firebase项目的通用API密钥
- 开启了此前未启用的Firebase服务(如Cloud Messaging、动态链接等)
- 修改了OAuth客户端的核心配置(非新增/删除SHA操作)
内容的提问来源于stack exchange,提问作者ThinkAndCode
相关产品推荐
相关产品推荐

