HarmonyOS i18n.System.setAppPreferredLanguage的参数列表在哪里可以找到?

i18n.System.setAppPreferredLanguage的参数列表在哪里可以找到,哪些是合法的语言值?

另外设置了语言之后,我应该如何重启应用,来让变更的语言生效呢?有没有代码方法来重启应用

阅读 461
1 个回答

1、要获取系统支持的语言列表,可以调用getSystemLanguages()方法。该方法获取系统支持的语言ID列表请参考:https://developer.huawei.com/consumer/cn/doc/harmonyos-references-V5/js-apis-i18n-V5

2、重启App

应用恢复参考文档:https://developer.huawei.com/consumer/cn/doc/harmonyos-guides-V5/apprecovery-guidelines-V5

实现步骤

1.module.json5中配置支持恢复的Ability

2.新建AbilityStage类,在onCreate中设置启动恢复参数

3.在module.json5中的srcEntry中 配置新建的Ability,作为应用启动的ability

4.页面调用 appRecovery.restartApp();

参考代码:

//创建Ability
//AbilityStage
import appRecovery from ‘@ohos.app.ability.appRecovery’;
import AbilityStage from ‘@ohos.app.ability.AbilityStage’;
export default class MyAbilityStage extends AbilityStage {
  onCreate() {
    appRecovery.enableAppRecovery(
      appRecovery.RestartFlag.ALWAYS_RESTART,
      appRecovery.SaveOccasionFlag.SAVE_WHEN_ERROR,
      appRecovery.SaveModeFlag.SAVE_WITH_FILE
    );

    let want ={
      bundleName:‘com.example.test’,
      abilityName:“EntryAbility”
    }
    appRecovery.setRestartWant(want)
  }
}

//配置Ability作为启动ability
“module”: {
  “name”: “entry”,
  “srcEntry”: ‘./ets/AbilityStage/AbilityStage.ets’,
  …
  ///设置需要重启的UIAiblity
  “abilities”: [
  {
    “name”: “EntryAbility”,
    …
    “recoverable”: true,
    …
    //页面执行重启APP的操作
    //page
    .onClick(() => {
    appRecovery.restartApp();
  })
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进