HarmonyOS 如何通过代码重启自身App?

HarmonyOS 如何通过代码重启自身App?

HarmonyOS
3天前
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
put_get

​应用恢复参考文档:​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(); 
  })
分享
微博
QQ
微信
回复
3天前
相关问题
如何通过代码触发APP重启
1728浏览 • 1回复 待解决
怎样获取app自身bundleName?
550浏览 • 1回复 待解决
如何停止UIAbility自身
1920浏览 • 1回复 待解决
HarmonyOS 如何通过代码来关闭实况窗
171浏览 • 1回复 待解决
如何通过代码关闭子窗口?
290浏览 • 1回复 待解决
ArkUI如何通过代码动态创建组件
2257浏览 • 1回复 待解决
HarmonyOS如何实现重启应用
650浏览 • 1回复 待解决
如何获取应用自身的bundleName
2339浏览 • 1回复 待解决
HarmonyOS 子组件内如何获取自身大小
307浏览 • 1回复 待解决
如何通过代码随意修改锁屏图片?
5367浏览 • 1回复 待解决
HarmonyOS是否支持通过代码创建工程
317浏览 • 1回复 待解决
HarmonyOS har包如何获取自身的版本号
383浏览 • 1回复 待解决
如何获取应用自身的源文件路径
1898浏览 • 1回复 待解决
如何重启 OceanBase 集群?
3418浏览 • 1回复 待解决
如何手动重启 OceanBase 集群?
5028浏览 • 1回复 待解决