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

React Native集成HMS Account时邮箱授权选项默认未选中如何设为必选?

可以将obtain your email address选项设置为默认选中的必选项,只需要调整登录请求的参数配置即可,具体修改方式如下:

核心修改逻辑

@hmscore/react-native-hms-account提供了强制授权的配置参数,开启后你在authScopeList中声明的所有权限都会被设为必选,授权页对应选项会默认勾选,且用户无法取消,必须同意才能完成登录。

修改后的代码示例

signInWithIdToken = () => {
  let signInData = {
    accountAuthParams: HMSAuthParamConstants.DEFAULT_AUTH_REQUEST_PARAM,
    authRequestOption: [
      HMSAuthRequestOptionConstants.ID_TOKEN,
      HMSAuthRequestOptionConstants.ACCESS_TOKEN,
      // 可选补充:添加邮箱请求选项,提升权限请求优先级
      HMSAuthRequestOptionConstants.EMAIL
    ],
    authScopeList: [HMSAuthScopeListConstants.EMAIL],
    // 新增强制scope授权参数,所有传入的scope均为必选,默认勾选不可取消
    forceScopes: true
  };
  HMSAccountAuthService.signIn(signInData)
    .then((response) => {
      this.logger('Sign In With IdToken -> ', response);
      console.log(response);
    })
    .catch((err) => {
      this.errorLogger('Sign In With IdToken -> ', err);
    });
};

低版本兼容方案

如果你使用的SDK版本低于6.1.0,不存在forceScopes参数,可以将accountAuthParams的值替换为HMSAuthParamConstants.DEFAULT_AUTH_REQUEST_PARAM_GAME,该默认参数会默认将所有传入的scope设为必选,也能实现相同效果。


内容的提问来源于stack exchange,提问作者John Stuart

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.02 19:27:03