HarmonyOS 应用开发之启动/停止本地PageAbility

news/2024/7/21 8:15:28 标签: harmonyos, 华为, openharmony, 移动开发, 鸿蒙开发

启动本地PageAbility

PageAbility相关的能力通过featureAbility提供,启动本地Ability通过featureAbility中的startAbility接口实现。

表1 featureAbility接口说明

接口名接口描述
startAbility(parameter: StartAbilityParameter)启动Ability。
startAbilityForResult(parameter: StartAbilityParameter)启动Ability,并在该Ability被销毁时返回执行结果。

如下示例通过startAbility显式启动PageAbility。启动Ability的参数包含want,关于want的说明详见 对象间信息传递载体Want ,相应的,隐式启动与显式启动也不在此赘述。

import featureAbility from '@ohos.ability.featureAbility'
import Want from '@ohos.app.ability.Want';
import Logger from '../../utils/Logger';

const TAG: string = 'PagePageAbilityFirst';

(async (): Promise<void> => {
  try {
    Logger.info(TAG, 'Begin to start ability');
    let want: Want = {
      bundleName: 'com.samples.famodelabilitydevelop',
      moduleName: 'entry',
      abilityName: 'com.samples.famodelabilitydevelop.PageAbilitySingleton'
    };
    await featureAbility.startAbility({ want: want });
    Logger.info(TAG, `Start ability succeed`);
  }
  catch (error) {
    Logger.error(TAG, 'Start ability failed with ' + error);
  }
})()

停止PageAbility

停止PageAbility通过featureAbility中的terminateSelf接口实现。

表1 featureAbility接口说明

如下示例展示了停止Ability的方法。

import featureAbility from '@ohos.ability.featureAbility';
import Logger from '../../utils/Logger';

const TAG: string = 'PagePageAbilityFirst';

(async (): Promise<void> => {
  try {
    Logger.info(TAG, 'Begin to terminateSelf');
    await featureAbility.terminateSelf();
    Logger.info(TAG, 'terminateSelf succeed');
  } catch (error) {
    Logger.error(TAG, 'terminateSelf failed with ' + error);
  }
})()

为了能让大家更好的学习鸿蒙(HarmonyOS NEXT)开发技术,这边特意整理了《鸿蒙开发学习手册》(共计890页),希望对大家有所帮助:https://qr21.cn/FV7h05

鸿蒙开发学习手册》:

如何快速入门:https://qr21.cn/FV7h05

  1. 基本概念
  2. 构建第一个ArkTS应用
  3. ……

开发基础知识:https://qr21.cn/FV7h05

  1. 应用基础知识
  2. 配置文件
  3. 应用数据管理
  4. 应用安全管理
  5. 应用隐私保护
  6. 三方应用调用管控机制
  7. 资源分类与访问
  8. 学习ArkTS语言
  9. ……

基于ArkTS 开发:https://qr21.cn/FV7h05

  1. Ability开发
  2. UI开发
  3. 公共事件与通知
  4. 窗口管理
  5. 媒体
  6. 安全
  7. 网络与链接
  8. 电话服务
  9. 数据管理
  10. 后台任务(Background Task)管理
  11. 设备管理
  12. 设备使用信息统计
  13. DFX
  14. 国际化开发
  15. 折叠屏系列
  16. ……

鸿蒙开发面试真题(含参考答案):https://qr18.cn/F781PH

鸿蒙开发面试大盘集篇(共计319页):https://qr18.cn/F781PH

1.项目开发必备面试题
2.性能优化方向
3.架构方向
4.
鸿蒙开发系统底层方向
5.鸿蒙音视频开发方向
6.鸿蒙车载开发方向
7.鸿蒙南向开发方向


http://www.niftyadmin.cn/n/5460176.html

相关文章

JavaScript笔记 08

目录 01数组的遍历方法 02 清空数组的三种方式 03 Date 日期对象的创建和使用 04 Math数学对象 05 String字符串的常用方法 06 包装类的概述 01数组的遍历方法 数组有五中功能不同的遍历方法: 针对数组的每一个元素进行参数的回调函数 把当前元素作为第一实参 当前元素的…

C++入门练习题目解析(第二讲)

1.设计一个表示点的类point&#xff0c;内含私有成员变量x&#xff0c;y表示点的坐标。再设计一个独立函数double distance(point m,point n); 来计算两点距离。 #include<iostream> #include<math.h> using namespace std; class point { private:int x, y; publ…

LeetCode-2908. 元素和最小的山形三元组 I【数组,前后缀分解】

LeetCode-2908. 元素和最小的山形三元组 I【数组】 题目描述&#xff1a;解题思路一&#xff1a;暴力解法&#xff0c;三个for循环解题思路二&#xff1a;优化&#xff0c;这里注意到1 < nums[i] < 50&#xff0c;其实如果有山形三元组&#xff0c;那么result是一定小于等…

DW1000 定位技术解析

Qorvo 的 DW1000 是一款完全集成的单芯片超宽带 (UWB) 低功耗、低成本收发器 IC&#xff0c;符合 IEEE 802.15.4a 标准。它可用于 2 向测距或 TDoA 定位系统&#xff0c;以 10 厘米的精度定位资产。它还支持速率高达 6.8 Mbps 的数据传输。DW1000 由一个包含一个接收器137和一个…

新手如何学好linux的建议

作为新手你可以采取以下步骤来系统地学习 Linux&#xff1a; 开篇推荐 老铁们,男人女人都需要的技术活 拿去不谢:远程调试,发布网站到公网演示,远程访问内网服务,游戏联机推荐链接 选择一个发行版&#xff1a; 对于初学者&#xff0c;我推荐使用 Ubuntu 或者 Linux Mint。 Ub…

Android Fence机制

Android Fence机制 Android中的GraphicBuffer同步机制-Fence &#xff08;最全最详细&#xff0c;推荐&#xff09; AndroidQ 图形系统&#xff08;5&#xff09;Fence机制简介 Android P 图形显示系统&#xff08;十一&#xff09; BufferQueue&#xff08;二&#xff09;

android——枚举enum

在Kotlin中&#xff0c;枚举&#xff08;Enum&#xff09;是一种特殊的类&#xff0c;用于表示固定数量的常量。它允许你定义一组命名的常量值&#xff0c;这些值在程序中具有固定的意义。Kotlin的枚举功能强大&#xff0c;支持多种特性&#xff0c;如伴生对象、构造函数、属性…

软件测试工程师介绍

引言 在快速发展的软件行业中&#xff0c;软件测试工程师扮演着至关重要的角色。他们不仅是质量保证的第一道防线&#xff0c;也是确保软件产品满足用户需求、无缺陷地运行的关键。随着软件开发过程日益复杂和迭代速度的加快&#xff0c;软件测试工程师的工作变得更加重要但也…