Flutter中Firebase Google Auth登录失败:ApiException:10错误求助
Firebase谷歌登录ApiException: 10 问题排查方案
出现的错误
PlatformException(sign_in_failed, com.google.android.gms.common.api.ApiException: 10: , null, null)
已知前置操作
- 已添加SHA1、SHA256值,配置邮箱登录支持及网络权限
- 执行过
flutter clean、invalidate cache/ restart、卸载重装应用等操作 - 邮箱/密码登录功能正常,仅谷歌登录失败
针对性排查步骤
核对OAuth 2.0客户端ID配置
- 打开Firebase控制台→项目设置→常规,找到对应Android应用,查看是否生成了正确的OAuth客户端ID
- 打开谷歌云平台API控制台的凭据页面,检查对应Android应用的OAuth 2.0客户端ID,确保包名、SHA1值与本地项目完全匹配;若未自动生成,手动创建Android类型的OAuth客户端ID,填写正确信息
确认谷歌登录API已启用
- 在谷歌云平台API控制台的库页面,搜索“谷歌登录API”,确认该API处于启用状态,未启用则点击启用按钮
验证签名哈希值准确性
- 区分debug和release环境:debug环境使用debug keystore的SHA1/SHA256,release环境使用正式签名文件的哈希值
- 获取debug哈希值可执行命令:
keytool -list -v -keystore ~/.android/debug.keystore -alias androiddebugkey -storepass android -keypass android
更新google-services.json文件
- 完成上述配置后,回到Firebase控制台重新下载
google-services.json,替换项目android/app目录下的旧文件,再执行flutter clean后重新构建项目
- 完成上述配置后,回到Firebase控制台重新下载
检查设备谷歌服务版本
- 确保测试设备上的谷歌服务框架为最新版本,旧版本可能引发登录兼容问题
确认包名完全匹配
- 检查
android/app/build.gradle中的applicationId,与Firebase控制台、OAuth客户端ID配置中的包名完全一致,大小写、拼写均不能出错
- 检查
内容的提问来源于stack exchange,提问作者Gos Cb
相关产品推荐
相关产品推荐

