Flutter使用flutter_web_auth_2实现Google OAuth2登录遇卡顿问题求助
Flutter Web Auth 2实现Google登录的配置问题解决方案
一、Google Console的正确配置步骤
- 进入Google Cloud Console的目标项目,导航至「API和服务」→「凭据」
- 创建Android类型的OAuth客户端ID(不要选择Web应用类型):
- 填写应用的包名(即你代码里的
com.example.googlesignin3) - 输入对应环境的SHA-1指纹(debug环境用debug keystore的指纹,正式环境用发布版keystore的指纹)
- 填写应用的包名(即你代码里的
- 无需在「授权重定向URI」中填写
com.example.googlesignin3:/,Google会通过包名和SHA-1验证应用合法性,自定义scheme的跳转由flutter_web_auth_2组件处理。
二、浏览器卡顿的核心原因
你遇到的页面卡顿,大概率是因为使用了错误的客户端ID(比如Web应用ID),或者未配置正确的SHA-1和包名,导致Google OAuth页面无法完成身份验证流程,进而出现加载异常。
三、代码与配置的补充检查
- 确保代码中的
googleClientId是Android类型的客户端ID,而非Web应用ID - 确认AndroidManifest里的
data android:scheme值和代码中的callbackUrlScheme完全一致,无拼写错误 - 检查是否已启用Google OAuth2 API:在「API和服务」→「库」中搜索并启用该API
- 调试时,可通过命令
keytool -list -v -keystore ~/.android/debug.keystore获取debug环境的SHA-1指纹(默认密码为android),添加到Google Console的Android客户端配置中
内容的提问来源于stack exchange,提问作者OptimusPrime
相关产品推荐
相关产品推荐

