生命周期
//Create状态为在应用加载过程中
onCreate(){
console.log('生命周期')
}
//UIAbility实例创建完成之后,在进入Foreground之前,系统会创建一个WindowStage
onWindowStageCreate(windowStage: window.WindowStage) {
// Main window is created, set main page for this ability
TaskModel.initTaskDB(this.context)
hilog.info(0x0000, 'testTag', '%{public}s', 'Ability onWindowStageCreate');
windowStage.loadContent('pages/ToDoListPage', (err, data) => {
if (err.code) {
hilog.error(0x0000, 'testTag', 'Failed to load the content. Cause: %{public}s', JSON.stringify(err) ?? '');
return;
}
hilog.info(0x0000, 'testTag', 'Succeeded in loading the content. Data: %{public}s', JSON.stringify(data) ?? '');
});
}
//UIAbility实例切换至前台
onForeground() {
// 申请系统需要的资源,或者重新申请在onBackground中释放的资源
}
//切换至后台
onBackground() {
// 释放UI界面不可见时无用的资源,或者在此回调中执行较为耗时的操作
// 例如状态保存等
}
//在UIAbility实例销毁之前,则会先进入onWindowStageDestroy()回调
onWindowStageDestroy() {
// 释放UI界面资源
}
//Destroy状态在UIAbility实例销毁时触发
onDestroy() {
// 系统资源的释放、数据的保存等
}
上下文对象(UIAbilityContext)
UIAbilityContext是UIAbility的上下文环境,继承自Context。
UIAbilityContext模块提供允许访问特定UIAbility的资源的能力,包括对UIAbility的启动、停止的设置、获取caller通信接口、拉起弹窗请求用户授权等。
FA模型获取Context
- import featureAbility from ‘@ohos.ability.featureAbility’;
- // 获取context
- let context = featureAbility.getContext();
Stage模型获取Context
1.import from ‘@ohos.app.ability.UIAbility’
- 继承UIAbility 。this.context
接口Api
pp.ability.UIAbility’
- 继承UIAbility 。this.context