写点什么

OpenHarmony/HarmonyOS 应用上下文 Context

作者:坚果
  • 2023-04-18
    广东
  • 本文字数:1946 字

    阅读完需:约 6 分钟

OpenHarmony/HarmonyOS应用上下文Context

应用上下文 Context

作者:坚果

团队:坚果派

公众号:“大前端之旅”

润开鸿技术专家,华为 HDE,InfoQ 签约作者,OpenHarmony 布道师,擅长 HarmonyOS 应用开发、熟悉服务卡片开发,在“战码先锋”活动中作为大队长,累计培养三个小队长,带领 100+队员完成 Pr 的提交合入。欢迎通过主页或者私信联系我,加入坚果派,一起学习 OpenHarmony/HarmonyOS 应用开发。


Common 模块将二级模块 API 组织在一起方便开发者进行导出。

导入模块

import common from '@ohos.app.ability.common';
复制代码


系统能力:以下各项对应的系统能力均为 SystemCapability.Ability.AbilityBase

二级模块的集合

目前二级模块共有十二块。

UIAbilityContext

UIAbilityContext 是 UIAbility 的上下文环境,继承自 Context。


UIAbilityContext 模块提供允许访问特定 UIAbility 的资源的能力,包括对 UIAbility 的启动、停止的设置、获取 caller 通信接口、拉起弹窗请求用户授权等。


详细的使用情况请查阅:


https://gitee.com/openharmony/docs/blob/master/zh-cn/application-dev/reference/apis/js-apis-inner-application-uiAbilityContext.md/

AbilityStageContext

AbilityStageContext 是 AbilityStage 的上下文环境,继承自Context


AbilityStageContext 提供允许访问特定于 abilityStage 的资源的能力,包括获取 AbilityStage 对应的 ModuleInfo 对象、环境变化对象。


详细的使用情况请查阅:


https://gitee.com/openharmony/docs/blob/master/zh-cn/application-dev/reference/apis/js-apis-inner-application-abilityStageContext.md

ApplicationContext

ApplicationContext 模块提供开发者应用级别的的上下文的能力,包括提供注册及取消注册应用内组件生命周期的监听接口。


详细的使用情况请查阅: ApplicationContext

BaseContex

BaseContext 抽象类用于表示继承的子类 Context 是 Stage 模型还是 FA 模型,是所有 Context 类型的父类。


详细的使用情况请查阅:BaseContext

Context

Context 模块提供了 ability 或 application 的上下文的能力,包括访问特定应用程序的资源等。


详细的使用情况请查阅:Context

ExtensionContext

ExtensionContext 是 Extension 的上下文环境,继承自 Context。


ExtensionContext 模块提供访问特定 Extension 的资源的能力,对于拓展的 Extension,可直接将 ExtensionContext 作为上下文环境,或者定义一个继承自 ExtensionContext 的类型作为上下文环境。如:ServiceExtension 提供了 ServiceExtensionContext,它在 ExtensionContext 的基础上扩展了启动、停止、绑定、解绑 Ability 的能力,详见ServiceExtensionContext


详细的使用情况请查阅: ExtensionContext

FormExtensionContext

FormExtensionContext 模块是 FormExtensionAbility 的上下文环境,继承自 ExtensionContext。


FormExtensionContext 模块提供 FormExtensionAbility 具有的接口和能力。


详细的使用情况请查阅:FormExtensionContext

AreaMode

Common 模块将二级模块 API 组织在一起方便开发者进行导出。


详细的使用情况请查阅: AreaMode

EventHub

EventHub 模块提供了事件中心,提供订阅、取消订阅、触发事件的能力。


详细的使用情况请查阅: EventHub

PermissionRequestResult(无)

详细的使用情况请查阅:


PermissionRequestResult

PacMap

可以通过acquireDataAbilityHelper接口获取 DataAbilityHelper 对象。


详细的使用情况请查阅:PacMap

AbilityResult

定义 Ability 被拉起并退出后返回的结果码和数据,可以通过startAbilityForResult获取被拉起 Ability 退出后返回的 AbilityResult 对象,被 startAbilityForResult 拉起的 Ability 对象可以通过terminateSelfWithResult返回 AbilityResult 对象。


详细的使用情况请查阅: AbilityResult

ConnectOptions

在连接指定的后台服务时作为入参,用于接收连接过程中的状态变化,如作为connectServiceExtensionAbility的入参,连接指定的 ServiceExtensionAbility。


详细的使用情况请查阅: ConnectOptions


示例:


import common from '@ohos.app.ability.common';
let uiAbilityContext: common.UIAbilityContext;let abilityStageContext: common.AbilityStageContext;let applicationContext: common.ApplicationContext;let baseContext: common.BaseContext;let context: common.Context;let extensionContext: common.ExtensionContext;let formExtensionContext: common.FormExtensionContext;let areaMode: common.AreaMode;let eventHub: common.EventHub;let permissionRequestResult: common.PermissionRequestResult;let pacMap: common.PacMap;let abilityResult: common.AbilityResult;let connectOptions: common.ConnectOptions;
复制代码


AreaMode

访问的文件分区,每个文件分区有对应自己的内容。


系统能力:以下各项对应的系统能力均为 SystemCapability.Ability.AbilityRuntime.Core



用户头像

坚果

关注

此间若无火炬,我便是唯一的光 2020-10-25 加入

公众号:“大前端之旅”,OpenHarmony布道师,润和软件鸿蒙KOL,InfoQ签约作者,电子发烧友鸿蒙KOL

评论

发布
暂无评论
OpenHarmony/HarmonyOS应用上下文Context_OpenHarmony_坚果_InfoQ写作社区