当Google语言设置为中文时,为什么Session.getActiveUserLocale()返回空字符串



我正在使用Session.getActiveUserLocale((在谷歌日历工作区插件(runtimeVersion:V8(中获取用户的区域设置,它非常适用于我测试过的每种语言,除了中文(简体和繁体(。

function onCalendarHomePageOpen(e) {
Logger.log("Language Code: " + Session.getActiveUserLocale());
}

应返回";zh-CN";当我的语言设置为简体中文时https://myaccount.google.com/language,但它返回一个空字符串。

我知道我可以使用e.commonEventObject.userLocale,但在很多地方都需要语言环境,如果可能的话,我宁愿不到处传递。

我的作用域是https://www.googleapis.com/auth/script.localeaddOns.common.useLocaleFromApptrue,正如我所提到的,它适用于我尝试过的所有其他语言,包括日语和阿拉伯语。

这是一个已知的问题吗?有人能帮忙吗?谢谢

我已经为此提交了一个错误

Session.getActiveUserLocale((不返回中文值,适用于其他语言

一定要去看它,让谷歌知道它会影响你。

复制步骤

  1. 启动新的应用程序脚本项目。

  2. 将此代码粘贴到下面:

    代码.gs

    function onCalendarHomePageOpen(e) {
    Logger.log("Language Code: " + Session.getActiveUserLocale());
    }
    
  3. 将清单替换为:

    appscript.json

    { 
    "timeZone":"Europe/Madrid",
    "addOns":{ 
    "calendar":{ 
    "homepageTrigger":{ 
    "runFunction":"onCalendarHomePageOpen",
    "enabled":true
    }
    },
    "common":{ 
    "logoUrl":"https://ssl.gstatic.com/docs/script/images/logo/script-64.png",
    "name":"MRE Chinese Locale",
    "useLocaleFromApp":true
    }
    },
    "oauthScopes":[
    "https://www.googleapis.com/auth/script.locale",
    "https://www.googleapis.com/auth/calendar.addons.execute"
    ],
    "exceptionLogging":"STACKDRIVER",
    "runtimeVersion":"V8"
    }
    
  4. 转到部署>测试部署-选择类型";Add-on";,然后为您的帐户安装它。

  5. 打开执行页面。

  6. 在新选项卡中,转到https://calendar.google.com/加载后,在侧边栏中您应该会看到应用程序脚本的图标。单击图标打开侧边栏。这将触发该功能。

  7. 返回执行页面。

  8. 在另一个新选项卡中,转到https://myaccount.google.com/u/1/language

  9. 将您的首选语言更改为中文、简体或繁体

  10. 刷新日历页面并再次打开侧边栏。

  11. 检查执行页面。

预期结果:

我的账户原来设置为英语,输出Language code: en,我把它改为西班牙语,它输出Language code: es。对于中国人,我期待Langauge code: zh

实际结果:

Language Code:-没有中文语言代码。

相关内容

  • 没有找到相关文章

最新更新