部分Google账号无法通过Google Sign In登录,返回12500错误
解决Flutter应用Google Sign In 12500登录错误
针对你遇到的部分Google账号(含学校账号、普通账号)无法登录,返回com.google.android.gms.common.api.ApiException: 12500错误的问题,可按以下步骤排查:
检查OAuth同意界面状态
若应用处于测试状态,仅添加到测试用户列表的账号可登录。前往Google Cloud控制台的OAuth同意界面:- 若未发布为生产状态,将无法登录的账号添加至测试用户;
- 若已完成生产发布,确认发布流程无遗漏(如审核通过)。
验证SHA-1证书指纹配置
证书指纹不匹配是12500错误的常见诱因:- 确保Google Cloud项目中已添加当前构建环境(debug/release)对应的SHA-1指纹;
- 学校账号所属G Suite域需确认管理员是否允许应用访问,或在OAuth同意界面的“域”配置中添加对应学校域名。
升级google_sign_in包版本
旧版本包可能存在兼容性问题,执行命令升级至最新稳定版:flutter pub upgrade google_sign_in确认权限范围一致性
即使已声明email、profile范围,仍需核对:- Google Cloud控制台中OAuth客户端ID的权限范围与代码中
GoogleSignIn(scopes: ["email", "profile"])完全一致; - 未额外添加未在同意界面配置的权限范围。
- Google Cloud控制台中OAuth客户端ID的权限范围与代码中
清理设备缓存
引导用户尝试:- 清除应用的缓存与数据;
- 清除Google Play服务缓存;
- 重新登录设备上的Google账号后再尝试登录应用。
内容的提问来源于stack exchange,提问作者Oskar
相关产品推荐
相关产品推荐

