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

Flutter Google Sign In 7.1.1版本Hosted Domain功能无法正确过滤邮箱列表问题求助

Flutter Google Sign In 7.1.1版本Hosted Domain功能无法正确过滤邮箱列表问题求助

各位开发者朋友好,我最近把项目里的Google Sign In包升级到了7.1.1版本,碰到了一个很困扰的问题:明明在初始化Google Sign In时指定了hostedDomain为自定义域名customdomain.com,但触发登录弹窗后,还是会显示所有关联的邮箱(比如@gmail.com或者其他域名的邮箱),完全没按照预期只过滤出customdomain.com域名的邮箱。

下面是我当前的实现代码:

final gsi = GoogleSignIn.instance;
final scopes = ["profile","email"];

await gsi.initialize(
  hostedDomain: "customdomain.com",
  serverClientId: BaseKey.googleSignInServerApiKey,
  clientId: BaseKey.googleSignInApiKey,
);

googleUser = await gsi.authenticate(scopeHint: scopes);

我已经确认在Google Cloud控制台正确配置了这个自定义域名,而且之前版本(具体版本记不清了)这个功能是正常工作的,升级后就出问题了。有没有朋友遇到过类似情况,或者能给我一些排查方向?

我自己尝试过的排查步骤:

  • 检查了Google Cloud控制台中OAuth 2.0客户端ID的配置,确认hosted domain已经正确添加
  • 清理了项目的build缓存,重新编译运行
  • 尝试在安卓、iOS设备上分别测试,问题都存在

目前想到的临时替代思路:

如果暂时无法解决弹窗过滤的问题,可以在用户登录成功后,手动检查用户邮箱的域名是否符合要求,如果不符合就提示并退出登录:

if (googleUser?.email != null && !googleUser!.email.endsWith('@customdomain.com')) {
  await gsi.signOut();
  // 提示用户只能使用指定域名的邮箱登录
}

希望有经验的朋友能帮忙指点一下,谢谢!

内容来源于stack exchange

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.04.07 08:59:34