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

@ohos.app.ability.AbilityConstant (AbilityConstant)

一、说明
AbilityConstant提供Ability相关的枚举,包括设置初次启动原因、上次退出原因、迁移结果、窗口类型等。本模块首批接口从API version 9开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。本模块接口仅可在Stage模型下使用。

二、导入模块

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

三、属性

1.AbilityConstant.LaunchParam
启动参数。

系统能力:以下各项对应的系统能力均为SystemCapability.Ability.AbilityRuntime.Core
鸿蒙原生应用/元服务开发-Stage模型能力接口(二)-鸿蒙开发者社区
2.AbilityConstant.LaunchReason

Ability初次启动原因,该类型为枚举,可配合Ability的onCreate(want, launchParam)方法根据launchParam.launchReason的不同类型执行相应操作。

系统能力:以下各项对应的系统能力均为SystemCapability.Ability.AbilityRuntime.Core
鸿蒙原生应用/元服务开发-Stage模型能力接口(二)-鸿蒙开发者社区
示例:

import UIAbility from ‘@ohos.app.ability.UIAbility;

class MyAbility extends UIAbility {
    
    
onCreate(want, launchParam) {
    
    
if (launchParam.launchReason === AbilityConstant.LaunchReason.START_ABILITY) {
    
    
console.log(The ability has been started by the way of startAbility.);
}
}
}

3.AbilityConstant.LastExitReason

Ability上次退出原因,该类型为枚举,可配合Ability的onCreate(want, launchParam)方法根据launchParam.lastExitReason的不同类型执行相应操作。
系统能力:以下各项对应的系统能力均为SystemCapability.Ability.AbilityRuntime.Core
鸿蒙原生应用/元服务开发-Stage模型能力接口(二)-鸿蒙开发者社区
示例:

import UIAbility from ‘@ohos.app.ability.UIAbility;

class MyAbility extends UIAbility {
    
    
onCreate(want, launchParam) {
    
    
if (launchParam.lastExitReason === AbilityConstant.LastExitReason.ABILITY_NOT_RESPONDING) {
    
    
console.log(The ability has exit last because the ability was not responding.);
}
}

4.AbilityConstant.OnContinueResult

Ability迁移结果,该类型为枚举,可配合Ability的onContinue(wantParam)方法进完成相应的返回。
系统能力:以下各项对应的系统能力均为SystemCapability.Ability.AbilityRuntime.Core
鸿蒙原生应用/元服务开发-Stage模型能力接口(二)-鸿蒙开发者社区
示例

import UIAbility from ‘@ohos.app.ability.UIAbility;

class MyAbility extends UIAbility {
    
    
onContinue(wantParam) {
    
    
return AbilityConstant.OnContinueResult.AGREE;
}
}

5.AbilityConstant.MemoryLevel

内存级别,该类型为枚举,可配合Ability的onMemoryLevel(level)方法根据level执行不同内存级别的相应操作。
系统能力:以下各项对应的系统能力均为SystemCapability.Ability.AbilityRuntime.Core
鸿蒙原生应用/元服务开发-Stage模型能力接口(二)-鸿蒙开发者社区
示例

import UIAbility from ‘@ohos.app.ability.UIAbility;

class MyAbility extends UIAbility {
    
    
onContinue(wantParam) {
    
    
return AbilityConstant.OnContinueResult.AGREE;
}
}

6.AbilityConstant.MemoryLevel

内存级别,该类型为枚举,可配合Ability的onMemoryLevel(level)方法根据level执行不同内存级别的相应操作。
系统能力:以下各项对应的系统能力均为SystemCapability.Ability.AbilityRuntime.Core
鸿蒙原生应用/元服务开发-Stage模型能力接口(二)-鸿蒙开发者社区
示例:

import UIAbility from ‘@ohos.app.ability.UIAbility;

class MyAbility extends UIAbility {
    
    
onSaveState(reason, wantParam) {
    
    
return AbilityConstant.OnSaveResult.ALL_AGREE;
}
}

7.AbilityConstant.StateType

保存应用数据场景原因,该类型为枚举,可配合Ability的onSaveState(reason, wantParam)方法根据reason的不同类型执行相应操作。
系统能力:以下各项对应的系统能力均为SystemCapability.Ability.AbilityRuntime.Core
鸿蒙原生应用/元服务开发-Stage模型能力接口(二)-鸿蒙开发者社区
示例:

import UIAbility from ‘@ohos.app.ability.UIAbility;

class MyAbility extends UIAbility {
    
    
onSaveState(reason, wantParam) {
    
    
if (reason === AbilityConstant.StateType.CONTINUATION) {
    
    
console.log(Save the ability data when the ability continuation.);
}
return AbilityConstant.OnSaveResult.ALL_AGREE;
}
}

结尾

我们今天入门了ArkTS,初步接触了一下组件的应用,如果有什么错误希望大家可以在评论区中指正,祝大家可以早日成为ArkTS大佬。

这里整理了一份《鸿蒙(HarmonyOS)开发学习指南》,希望能对那些想要学习鸿蒙,但是有没有方向的人提供一点帮助。(由于文档内容过多,因此为了避免影响到大家的阅读体验,在此只以截图展示部分内容,详细完整版的看文末有免费的获取方式!)

## 《鸿蒙(HarmonyOS)开发学习指南》

第一章 快速入门

1、开发准备

2、构建第一个ArkTS应用(Stage模型)

3、构建第一个ArkTS应用(FA模型)

4、构建第一个JS应用(FA模型)

5、…

图片

第二章 开发基础知识

1、应用程序包基础知识

2、应用配置文件(Stage模型)

3、应用配置文件概述(FA模型)

4、…

图片

第三章 资源分类与访问

1、 资源分类与访问

2、 创建资源目录和资源文件

3、 资源访问

4、…

图片

第四章 学习ArkTs语言

1、初识ArkTS语言

2、基本语法

3、状态管理

4、其他状态管理

5、渲染控制

6、…

图片

第五章 UI开发

1.方舟开发框架(ArkUI)概述

2.基于ArkTS声明式开发范式

3.兼容JS的类Web开发范式

4…

图片

第六章 Web开发

1.Web组件概述

2.使用Web组件加载页面

3.设置基本属性和事件

4.在应用中使用前端页面JavaScript

5.ArkTS语言基础类库概述

6.并发

7…

图片

11.网络与连接

12.电话服务

13.数据管理

14.文件管理

15.后台任务管理

16.设备管理

17…

图片

第七章 应用模型

1.应用模型概述

2.Stage模型开发指导

3.FA模型开发指导

4…

图片

扫描下方二维码免费领取,《鸿蒙学习指南》

图片

猜你喜欢

转载自blog.csdn.net/Android23333/article/details/135333055