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

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

HarmonyOS
2024-11-14 09:47:38
浏览
收藏 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
微信
回复
2024-11-14 16:53:01
相关问题
如何通过代码触发APP重启
2969浏览 • 1回复 待解决
HarmonyOS 如何手动重启APP
811浏览 • 1回复 待解决
怎样获取app自身bundleName?
1748浏览 • 1回复 待解决
HarmonyOS 如何通过代码取消代理
995浏览 • 1回复 待解决
如何停止UIAbility自身
2848浏览 • 1回复 待解决
HarmonyOS 如何通过代码获取appID
1125浏览 • 1回复 待解决
HarmonyOS 如何通过代码获取应用名称
1056浏览 • 1回复 待解决
HarmonyOS 如何监听组件自身尺寸变化
929浏览 • 1回复 待解决
HarmonyOS 如何通过代码来关闭实况窗
1403浏览 • 1回复 待解决
如何通过代码关闭子窗口?
1405浏览 • 1回复 待解决
如何获取应用自身的bundleName
3662浏览 • 1回复 待解决
ArkUI如何通过代码动态创建组件
3846浏览 • 1回复 待解决
HarmonyOS 子组件内如何获取自身大小
1292浏览 • 1回复 待解决
鸿蒙里如何通过代码解压zip文件?
914浏览 • 0回复 待解决
如何通过代码随意修改锁屏图片?
6607浏览 • 1回复 待解决