鸿蒙原生应用/元服务开发-Stage模型能力接口(九)上

本文详细介绍了HarmonyOS中的UIAbility组件,包括其创建、销毁、窗口阶段操作、通信机制以及各种生命周期回调函数,如onCreate、onWindowStageCreate等,旨在帮助开发者理解和使用这些功能进行应用开发。
摘要由CSDN通过智能技术生成

@ohos.app.ability.UIAbility (UIAbility)
一、说明

UIAbility是包含UI界面的应用组件,提供组件创建、销毁、前后台切换等生命周期回调,同时也具备组件协同的能力,组件协同主要提供如下常用功能。

Caller,由startAbilityByCall接口返回,CallerAbility(调用者)可使用Caller与CalleeAbility(被调用者)进行通信。

Callee,UIAbility的内部对象,CalleeAbility(被调用者)可以通过Callee与Caller进行通信。本模块首批接口从API version 9 开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。本模块接口仅可在Stage模型下使用。

二、导入模块
import Ability from ‘@ohos.app.ability.UIAbility’;
三、属性
系统能力:以下各项对应的系统能力均为SystemCapability.Ability.AbilityRuntime.AbilityCore
 

鸿蒙原生应用/元服务开发-Stage模型能力接口(九)上-鸿蒙开发者社区


1.UIAbility.onCreate
onCreate(want: Want, param: AbilityConstant.LaunchParam): void;

Ability创建时回调,执行初始化业务逻辑操作。

系统能力:SystemCapability.Ability.AbilityRuntime.AbilityCore
参数:
 

鸿蒙原生应用/元服务开发-Stage模型能力接口(九)上-鸿蒙开发者社区


示例:

class myAbility extends Ability {

onCreate(want, param) {

    console.log('onCreate, want:' + want.abilityName);

}

}

2.UIAbility.onWindowStageCreate
onWindowStageCreate(windowStage: window.WindowStage): void

当WindowStage创建后调用。

系统能力:SystemCapability.Ability.AbilityRuntime.AbilityCore

参数:
 

鸿蒙原生应用/元服务开发-Stage模型能力接口(九)上-鸿蒙开发者社区


示例:

class myAbility extends Ability {

onWindowStageCreate(windowStage) {

    console.log('onWindowStageCreate');

}

}

3.UIAbility.onWindowStageDestroy
onWindowStageDestroy(): void

当WindowStage销毁后调用。

系统能力:SystemCapability.Ability.AbilityRuntime.AbilityCore

示例:

class myAbility extends Ability {

onWindowStageDestroy() {

    console.log('onWindowStageDestroy');

}

}

4.UIAbility.onWindowStageRestore
onWindowStageRestore(windowStage: window.WindowStage): void

当迁移多实例ability时,恢复WindowStage后调用。

系统能力:SystemCapability.Ability.AbilityRuntime.AbilityCore

参数:
 

鸿蒙原生应用/元服务开发-Stage模型能力接口(九)上-鸿蒙开发者社区


示例:

class myAbility extends Ability {

onWindowStageRestore(windowStage) {

    console.log('onWindowStageRestore');

}

}

5.UIAbility.onDestroy
onDestroy(): void | Promise;

Ability生命周期回调,在销毁时回调,执行资源清理等操作。

系统能力:SystemCapability.Ability.AbilityRuntime.AbilityCore

示例:

class myAbility extends Ability {

onDestroy() {

    console.log('onDestroy');

}

}

6.UIAbility.onForeground
onForeground(): void;

Ability生命周期回调,当应用从后台转到前台时触发。

系统能力:SystemCapability.Ability.AbilityRuntime.AbilityCore

示例:

class myAbility extends Ability {

onForeground() {

    console.log('onForeground');

}

}

7.UIAbility.onBackground
onBackground(): void;

Ability生命周期回调,当应用从前台转到后台时触发。

系统能力:SystemCapability.Ability.AbilityRuntime.AbilityCore

示例:

class myAbility extends Ability {

onBackground() {

    console.log('onBackground');

}

}
8.UIAbility.onContinue
onContinue(wantParam: { [key: string]: Object }): AbilityConstant.OnContinueResult;

当ability迁移准备迁移时触发,保存数据。

系统能力:SystemCapability.Ability.AbilityRuntime.AbilityCore
 

鸿蒙原生应用/元服务开发-Stage模型能力接口(九)上-鸿蒙开发者社区


示例:

import AbilityConstant from ‘@ohos.app.ability.AbilityConstant’;

class MyUIAbility extends Ability {

onContinue(wantParams) {

    console.log('onContinue');

    wantParams['myData'] = 'my1234567';

    return AbilityConstant.OnContinueResult.AGREE;

}

}

9.UIAbility.onNewWant
onNewWant(want: Want, launchParams: AbilityConstant.LaunchParam): void;

当传入新的Want,ability再次被拉起时会回调执行该方法。

系统能力:SystemCapability.Ability.AbilityRuntime.AbilityCore

鸿蒙原生应用/元服务开发-Stage模型能力接口(九)上-鸿蒙开发者社区


示例:

class MyUIAbility extends Ability {

onNewWant(want, launchParams) {

    console.log('onNewWant, want:' + want.abilityName);

    console.log('onNewWant, launchParams:' + JSON.stringify(launchParams));

 }

}

10.UIAbility.onDump
onDump(params: Array): Array;

转储客户端信息时调用。

系统能力:SystemCapability.Ability.AbilityRuntime.AbilityCore
 

鸿蒙原生应用/元服务开发-Stage模型能力接口(九)上-鸿蒙开发者社区


示例:

class myAbility extends Ability {

onDump(params) {

    console.log('dump, params:' + JSON.stringify(params));

    return ['params'];

}

}

11.UIAbility.onSaveState
onSaveState(reason: AbilityConstant.StateType, wantParam : {[key: string]: Object}): AbilityConstant.OnSaveResult;

该API配合appRecovery使用。在应用故障时,如果使能了自动保存状态,框架将回调onSaveState保存Ability状态。

系统能力:SystemCapability.Ability.AbilityRuntime.AbilityCore

鸿蒙原生应用/元服务开发-Stage模型能力接口(九)上-鸿蒙开发者社区


示例:

import AbilityConstant from ‘@ohos.app.ability.AbilityConstant’;

class MyUIAbility extends Ability {

onSaveState(reason, wantParam) {

console.log('onSaveState');

  wantParam['myData'] = 'my1234567';

  return AbilityConstant.OnSaveResult.RECOVERY_AGREE;

本文根据HarmonyOS官方开发文档整理

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值