HarmonyOS/OpenHarmony应用开发-Stage模型ArkTS语言AbilityLifecycleCallback
AbilityLifecycleCallback模块提供应用上下文ApplicationContext的生命周期监听方法的回调类的能力。
说明:
模块首批接口从API version 9 开始支持。模块接口仅可在Stage模型下使用。
导入模块:
import AbilityLifecycleCallback from "@ohos.app.ability.AbilityLifecycleCallback";
属性:
AbilityLifecycleCallback.onAbilityCreate
onAbilityCreate(ability: UIAbility): void;
注册监听应用上下文的生命周期后,在ability创建时触发回调。
参数名 |
类型 |
必填 |
说明 |
ability |
UIAbility |
是 |
当前Ability对象 |
AbilityLifecycleCallback.onWindowStageCreate
onWindowStageCreate(ability: UIAbility, windowStage: window.WindowStage): void;
注册监听应用上下文的生命周期后,在windowStage创建时触发回调。
参数名 |
类型 |
必填 |
说明 |
ability |
UIAbility |
是 |
当前Ability对象 |
windowStage |
window.WindowStage |
是 |
当前WindowStage对象 |
AbilityLifecycleCallback.onWindowStageActive
onWindowStageActive(ability: UIAbility, windowStage: window.WindowStage): void;
注册监听应用上下文的生命周期后,在windowStage获焦时触发回调。
参数名 |
类型 |
必填 |
说明 |
ability |
UIAbility |
是 |
当前Ability对象 |
windowStage |
window.WindowStage |
是 |
当前WindowStage对象 |
AbilityLifecycleCallback.onWindowStageInactive
onWindowStageInactive(ability: UIAbility, windowStage: window.WindowStage): void;
注册监听应用上下文的生命周期后,在windowStage失焦时触发回调。
参数名 |
类型 |
必填 |
说明 |
ability |
UIAbility |
是 |
当前Ability对象 |
windowStage |
window.WindowStage |
是 |
当前WindowStage对象 |
AbilityLifecycleCallback.onWindowStageDestroy
onWindowStageDestroy(ability: UIAbility, windowStage: window.WindowStage): void;
注册监听应用上下文的生命周期后,在windowStage销毁时触发回调。
参数名 |
类型 |
必填 |
说明 |
ability |
UIAbility |
是 |
当前Ability对象 |
windowStage |
window.WindowStage |
是 |
当前WindowStage对象 |
AbilityLifecycleCallback.onAbilityDestroy
onAbilityDestroy(ability: UIAbility): void;
注册监听应用上下文的生命周期后,在ability销毁时触发回调。
参数名 |
类型 |
必填 |
说明 |
ability |
UIAbility |
是 |
当前Ability对象 |
AbilityLifecycleCallback.onAbilityForeground
onAbilityForeground(ability: UIAbility): void;
注册监听应用上下文的生命周期后,在ability的状态从后台转到前台时触发回调。
参数名 |
类型 |
必填 |
说明 |
ability |
UIAbility |
是 |
当前Ability对象 |
AbilityLifecycleCallback.onAbilityBackground
onAbilityBackground(ability: UIAbility): void;
注册监听应用上下文的生命周期后,在ability的状态从前台转到后台时触发回调。
参数名 |
类型 |
必填 |
说明 |
ability |
UIAbility |
是 |
当前Ability对象 |
AbilityLifecycleCallback.onAbilityContinue
onAbilityContinue(ability: UIAbility): void;
注册监听应用上下文的生命周期后,在ability迁移时触发回调。
参数名 |
类型 |
必填 |
说明 |
ability |
UIAbility |
是 |
当前Ability对象 |
接口示例:
import UIAbility from "@ohos.app.ability.UIAbility";let lifecycleid;export default class LifecycleAbility extends UIAbility { onCreate() { console.log("MyAbility onCreate") let AbilityLifecycleCallback = { onAbilityCreate(ability){ console.log("AbilityLifecycleCallback onAbilityCreate ability:" + JSON.stringify(ability)); }, onWindowStageCreate(ability, windowStage){ console.log("AbilityLifecycleCallback onWindowStageCreate ability:" + JSON.stringify(ability)); console.log("AbilityLifecycleCallback onWindowStageCreate windowStage:" + JSON.stringify(windowStage)); }, onWindowStageActive(ability, windowStage){ console.log("AbilityLifecycleCallback onWindowStageActive ability:" + JSON.stringify(ability)); console.log("AbilityLifecycleCallback onWindowStageActive windowStage:" + JSON.stringify(windowStage)); }, onWindowStageInactive(ability, windowStage){ console.log("AbilityLifecycleCallback onWindowStageInactive ability:" + JSON.stringify(ability)); console.log("AbilityLifecycleCallback onWindowStageInactive windowStage:" + JSON.stringify(windowStage)); }, onWindowStageDestroy(ability, windowStage){ console.log("AbilityLifecycleCallback onWindowStageDestroy ability:" + JSON.stringify(ability)); console.log("AbilityLifecycleCallback onWindowStageDestroy windowStage:" + JSON.stringify(windowStage)); }, onAbilityDestroy(ability){ console.log("AbilityLifecycleCallback onAbilityDestroy ability:" + JSON.stringify(ability)); }, onAbilityForeground(ability){ console.log("AbilityLifecycleCallback onAbilityForeground ability:" + JSON.stringify(ability)); }, onAbilityBackground(ability){ console.log("AbilityLifecycleCallback onAbilityBackground ability:" + JSON.stringify(ability)); }, onAbilityContinue(ability){ console.log("AbilityLifecycleCallback onAbilityContinue ability:" + JSON.stringify(ability)); } } // 1.通过context属性获取applicationContext let applicationContext = this.context.getApplicationContext(); // 2.通过applicationContext注册监听应用内生命周期 lifecycleid = applicationContext.on("abilityLifecycle", AbilityLifecycleCallback); console.log("registerAbilityLifecycleCallback number: " + JSON.stringify(lifecycleid)); } onDestroy() { let applicationContext = this.context.getApplicationContext(); applicationContext.off("abilityLifecycle", lifecycleid, (error, data) => { console.log("unregisterAbilityLifecycleCallback success, err: " + JSON.stringify(error)); }); }}