React Native Firebase安卓应用Play Store部署后Google登录失效求助
可能的原因及排查方向
1. Play应用签名的SHA-1配置遗漏或错误
尽管你提到已添加应用签名密钥证书的SHA-1,但需确认两个核心点:
- 从Play Console应用签名页面(路径:应用>发布>设置>应用签名)复制的是应用签名密钥的SHA-1,而非上传密钥或调试密钥。正式部署后,Play会用应用签名密钥重新签名APK,必须将该密钥的SHA-1同时添加到:
- Firebase控制台的项目设置>应用>安卓应用>添加指纹
- Google Cloud Console的API和服务>凭据>对应安卓应用的OAuth 2.0客户端ID的签名证书指纹
- 注意区分SHA-1和SHA-256,Firebase与Google Cloud均需添加SHA-1,部分场景可能还需补充SHA-256,确保两者配置无误。
2. Google Cloud Console的OAuth客户端ID配置问题
- 确认是否为应用签名密钥单独创建了OAuth客户端ID,而非仅使用上传密钥或调试密钥的ID。正式环境需关联应用签名密钥SHA-1与应用包名的独立客户端ID。
- 检查该OAuth客户端ID状态为“已启用”,未被误禁用。
3. Firebase配置文件未更新
添加新SHA-1后,必须从Firebase控制台重新下载最新的google-services.json文件,替换项目中的旧文件,再重新构建AAB包。若使用CI/CD自动构建,需确保新配置文件已同步至构建环境,未使用缓存的旧文件。
4. Play签名配置未同步生效
若近期修改过应用签名密钥,需等待1-2小时让Google服务同步新密钥信息。可尝试重新提交AAB包,或在Firebase、Google Cloud中重新保存SHA-1配置以触发同步。
5. 依赖库或构建配置冲突
- 检查
react-native-google-signin等相关依赖版本,确保与当前React Native、Firebase版本兼容,部分旧版本存在Play正式签名后的兼容性问题。 - 确认
build.gradle中的签名配置:正式构建仅使用上传密钥签名AAB,不要在本地用应用签名密钥签名,避免与Play的签名流程冲突。
6. 权限或网络限制
- 确保
AndroidManifest.xml中添加了<uses-permission android:name="android.permission.INTERNET" />,正式环境下网络权限缺失会导致登录失败。 - 排除地区防火墙限制(虽测试环境正常仍可快速排查)。
内容的提问来源于stack exchange,提问作者mohamed
相关产品推荐
相关产品推荐

