HarmonyOS appRecovery.restartApp无效

测试环境下我们可以手动切换环境变量,切换环境变量后重启才能生效。

1. 直接使用appRecovery.restartApp(),重启app不起作用,报错: AppRecovery not enabled。

2. 先调用appRecovery.enableAppRecovery后再调用appRecovery.restartApp,报错 ScheduleRecoverApp ability is nullptr。

3. 先调用appRecovery.enableAppRecovery和appRecovery.setRestartWant后再调用appRecovery.restartApp,报错 ScheduleRecoverApp ability is nullptr。

请问该场景下应该使用什么api主动重启app。

HarmonyOS
2024-11-14 09:34:13
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
Heiang

​一、具体操作步骤如下:

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

2.新建个ets页面在onCreate中给应用赋能 如下:

3.在module.json5中的srcEntry中 配置新建ets的路径。

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

二、代码配置示例如下:​

//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.testxx', 
      abilityName:"EntryAbility" 
    } 
    appRecovery.setRestartWant(want) 
  } 
} 
 
“module”: { 
  “name”: “entry”, 
  “srcEntry”: ‘./ets/AbilityStage/AbilityStage.ets’, 
  … 
  “abilities”: [ 
  { 
    “name”: “EntryAbility”, 
    … 
    “recoverable”: true, 
    … 
    //page 
    .onClick(() => { 
    appRecovery.restartApp(); 
  })

​三、这个重启有内置CD 60秒内只能重启1次。

四、具体API使用可参考如下链接:​https://developer.huawei.com/consumer/cn/doc/harmonyos-references-V5/js-apis-app-ability-apprecovery-V5

分享
微博
QQ
微信
回复
2024-11-14 15:47:36
相关问题
restartApp在应用非获焦时无法使用
432浏览 • 1回复 待解决
HarmonyOS 设置 bodercolor 无效
327浏览 • 1回复 待解决
HarmonyOS bindPopup设置color无效
774浏览 • 0回复 待解决
HarmonyOS 更换图标无效
195浏览 • 2回复 待解决
HarmonyOS 复制黏贴功能无效
295浏览 • 1回复 待解决
HarmonyOS camera设置对焦无效
365浏览 • 1回复 待解决
HarmonyOS 组件设置属性无效
379浏览 • 1回复 待解决
notifyDataChanged() 无效
6536浏览 • 4回复 待解决
HarmonyOS 用域名设置cookie无效
32浏览 • 1回复 待解决
HarmonyOS 自定义dialog open无效
238浏览 • 1回复 待解决
HarmonyOS 手机震动接口调用无效
292浏览 • 1回复 待解决
HarmonyOS h5 window.history 无效
25浏览 • 1回复 待解决
HarmonyOS 相机打开闪光灯设置无效
1009浏览 • 1回复 待解决
CommonDialog的setSwipeToDismiss(false)无效
6346浏览 • 1回复 待解决
HMOS开发:js getBoundingClientRect()无效
8548浏览 • 1回复 待解决