You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Flutter调试模式下Google OAuth 2.0登录失败求助

解决Flutter Google OAuth调试版登录ApiException:10问题

出现PlatformException(sign_in_failed, com.google.android.gms.common.api.ApiException: 10: , null, null)错误,结合你新增发布版客户端ID后调试版失效的场景,根源大概率和Google Cloud Console的配置误操作或本地签名不一致有关,具体可能是以下几种情况:

  • 调试版客户端的SHA1绑定被意外修改:新增发布版客户端时,可能误操作删除或替换了调试版OAuth客户端的签名证书指纹(SHA1)。去Google Cloud Console的OAuth 2.0客户端列表里,找到调试版对应的客户端,检查其"签名证书指纹"是否仍包含正确的调试SHA1值。
  • 调试版客户端ID被误删或禁用:确认调试版的OAuth客户端是否还存在于列表中,且状态为"启用"。有时候新增客户端时可能误删除了旧的调试客户端配置。
  • 本地调试签名配置不匹配:虽然你重新创建了调试密钥库,但需确认Flutter项目的android/app/build.gradle中debug闭包的签名配置是否正确指向新密钥库,包括密钥库路径、别名、密码。可以用以下命令重新生成当前调试环境的SHA1,和控制台配置对比:
    # macOS/Linux
    keytool -list -v -keystore ~/.android/debug.keystore -alias androiddebugkey -storepass android -keypass android
    # Windows
    keytool -list -v -keystore C:\Users\<你的用户名>\.android\debug.keystore -alias androiddebugkey -storepass android -keypass android
    
  • Google配置未同步:修改OAuth客户端配置后,Google服务器可能需要几分钟同步生效,若你刚修改完就测试,可能调试版配置还未更新。可以等待一段时间后再尝试登录。
  • OAuth同意屏幕配置变更:若新增发布版客户端时修改了OAuth同意屏幕的设置(比如切换到生产模式、调整范围或测试用户),可能导致调试版的登录请求不符合要求。检查同意屏幕的"测试用户"是否包含当前调试账号,以及范围是否覆盖Google登录所需的权限。

内容的提问来源于stack exchange,提问作者newaz kabir

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.15 17:34:51