From c83b2af08851b6609878a63faca79c03d8f0f7c4 Mon Sep 17 00:00:00 2001 From: yangzk Date: Tue, 30 Aug 2022 21:58:44 +0800 Subject: [PATCH] IssueNo: Description:add stage context doc Sig: SIG_ApplicationFramework Feature or Bugfix: Binary Source:No Signed-off-by: yangzk --- ...17\221\346\214\207\345\215\227-Context.md" | 574 ++++++++++++++++++ figures/contextIntroduction.png | Bin 0 -> 65697 bytes 2 files changed, 574 insertions(+) create mode 100644 figures/contextIntroduction.png diff --git "a/Stage\346\250\241\345\236\213\345\274\200\345\217\221\346\214\207\345\215\227-Context.md" "b/Stage\346\250\241\345\236\213\345\274\200\345\217\221\346\214\207\345\215\227-Context.md" index e69de29..d6b1b6b 100644 --- "a/Stage\346\250\241\345\236\213\345\274\200\345\217\221\346\214\207\345\215\227-Context.md" +++ "b/Stage\346\250\241\345\236\213\345\274\200\345\217\221\346\214\207\345\215\227-Context.md" @@ -0,0 +1,574 @@ +# Stage模型的context + +## Context的简介 + +### Context的定义 + +在应用的开发过程中,我们通常会遇到需要访问特定上下文的资源的情况,如在一个ability中获取当前ability的信息。也就是,用户代码在与系统交互中,系统需要根据当前所在的上下文,给出对应的信息和提供对应的功能。 + +OpenHarmony中,Context模块提供了ability或application的上下文的能力。 + +### Context的用途 + +开发者可以通过Context访问特定ability或application的资源,或者发起对应的请求等。 + +### Context的类型 + + OpenHarmony的应用框架分为FA模型和Stage两种模型。对应存在两套Context机制适配两种应用框架模型,其中application/BaseContext属于通用的Context基类,里面包含一个属性stageMode,用来区分开发模型是FA还是Stage。 + +- FA模型 + 只有app/Context中的方法属于FA模型对应的Context。该模式下,应用级别的Context和Ability级别的Context都是该类型的实例,如果在应用级别的Context里面调用了Ability级别的方法,会产生错误。所以开发者需要注意Context实例所代表的实际含义。详见[FA模型的Context](FA模型开发指南-Context.md)。 + +- Stage模型 + 除了app/Context之外的Context都属于Stage模型,分别有application/Context、application/ApplicationContext、application/AbilityStageContext、application/ExtensionContext、application/AbilityContext、application/FormExtensionContext等Context。这些Context的介绍及使用方式将会在本文中进行说明。 + + ![contextIntroduction](figures/contextIntroduction.png) + + + +## 约束与限制 + +下文所述的部分接口为系统接口,三方应用不支持调用。接口需要的权限以及是否是系统接口可以到各个章节的所附的接口详细页面查看。 + + + + +## 相关实例 + +### application/Context + +application/Context是基类Context,里面提供了应用的一些基础信息:resourceManager、applicationInfo、cacheDir、area等,还有应用的一些基本方法:createBundleContext等。具体接口声明详见:[Context接口声明](https://gitee.com/openharmony/interface_sdk-js/blob/master/api/application/Context.d.ts),接口文档详见:[Context接口文档](https://gitee.com/openharmony/docs/blob/master/zh-cn/application-dev/reference/apis/js-apis-Context.md)。 + +在不同的Context上,同一方法或属性会存在差异,比如通过ApplicationContext获取路径和AbilityContext获取的会有所不同,具体详见[应用开发路径的使用](##应用开发路径的使用) + + + +### application/ApplicationContext + +application/ApplicationContext是应用级别的Context。和基类Context相比,应用级别的Context中提供了监听进程内组件的生命周期的能力,包括registerAbilityLifecycleCallback和unregisterAbilityLifecycleCallback两种方法。具体接口声明详见:[ApplicationContext接口声明](https://gitee.com/openharmony/interface_sdk-js/blob/master/api/application/ApplicationContext.d.ts),接口文档详见:[ApplicationContext接口文档](https://gitee.com/openharmony/docs/blob/master/zh-cn/application-dev/reference/apis/js-apis-application-applicationContext.md)。 + +#### 获取方法 + +在Ability中通过context.getApplicationContext()方法获取。 + +#### 示例代码 + +```js +import AbilityStage from "@ohos.application.AbilityStage"; + +var lifecycleid; + +export default class MyAbilityStage extends AbilityStage { + onCreate() { + console.log("MyAbilityStage onCreate") + let AbilityLifecycleCallback = { + onAbilityCreate(ability){ + console.log("AbilityLifecycleCallback onAbilityCreate ability:" + JSON.stringify(ability)); + }, + onWindowStageCreate(ability, windowStage){ + console.log("AbilityLifecycleCallback onWindowStageCreate ability:" + JSON.stringify(ability)); + console.log("AbilityLifecycleCallback onWindowStageCreate windowStage:" + JSON.stringify(windowStage)); + }, + onWindowStageActive(ability, windowStage){ + console.log("AbilityLifecycleCallback onWindowStageActive ability:" + JSON.stringify(ability)); + console.log("AbilityLifecycleCallback onWindowStageActive windowStage:" + JSON.stringify(windowStage)); + }, + onWindowStageInactive(ability, windowStage){ + console.log("AbilityLifecycleCallback onWindowStageInactive ability:" + JSON.stringify(ability)); + console.log("AbilityLifecycleCallback onWindowStageInactive windowStage:" + JSON.stringify(windowStage)); + }, + onWindowStageDestroy(ability, windowStage){ + console.log("AbilityLifecycleCallback onWindowStageDestroy ability:" + JSON.stringify(ability)); + console.log("AbilityLifecycleCallback onWindowStageDestroy windowStage:" + JSON.stringify(windowStage)); + }, + onAbilityDestroy(ability){ + console.log("AbilityLifecycleCallback onAbilityDestroy ability:" + JSON.stringify(ability)); + }, + onAbilityForeground(ability){ + console.log("AbilityLifecycleCallback onAbilityForeground ability:" + JSON.stringify(ability)); + }, + onAbilityBackground(ability){ + console.log("AbilityLifecycleCallback onAbilityBackground ability:" + JSON.stringify(ability)); + }, + onAbilityContinue(ability){ + console.log("AbilityLifecycleCallback onAbilityContinue ability:" + JSON.stringify(ability)); + } + } + // 1.通过context属性获取applicationContext + let applicationContext = this.context.getApplicationContext(); + // 2.通过applicationContext注册监听应用内生命周期 + lifecycleid = applicationContext.registerAbilityLifecycleCallback(AbilityLifecycleCallback); + console.log("registerAbilityLifecycleCallback number: " + JSON.stringify(lifecycleid)); + } + onDestroy() { + let applicationContext = this.context.getApplicationContext(); + applicationContext.unregisterAbilityLifecycleCallback(lifecycleid, (error, data) => { + console.log("unregisterAbilityLifecycleCallback success, err: " + JSON.stringify(error)); + }); + } +} +``` + + + +### application/AbilityStageContext + +application/AbilityStageContext是模块级别的Context。和基类Context相比,模块级别的Context中多了HapModuleInfo和Configuration两个信息。具体接口声明详见:[AbilityStageContext接口声明](https://gitee.com/openharmony/interface_sdk-js/blob/master/api/application/AbilityStageContext.d.ts),接口文档详见:[AbilityStageContext接口文档](https://gitee.com/openharmony/docs/blob/master/zh-cn/application-dev/reference/apis/js-apis-abilitystagecontext.md)。 + +#### 获取方法 + +可以直接在AbilityStage中通过context属性获取。 + +#### 示例代码 + +```js +export default class MyAbilityStage extends AbilityStage { + onCreate() { + // 属性context就是AbilityStageContext类型的 + console.log('HapModuleInfo is ' + this.context.currentHapModuleInfo); + } +} +``` + + + +### application/AbilityContext + +Stage模型下,每个Ability中都包含了一个Context属性。Ability功能主要是处理生命周期,其余操作Ability的方法(如startAbility、connectAbility等)都是在AbilityContext中实现的。具体接口声明详见:[AbilityContext接口声明](https://gitee.com/openharmony/interface_sdk-js/blob/master/api/application/AbilityContext.d.ts),接口文档详见:[AbilityContext接口文档](https://gitee.com/openharmony/docs/blob/master/zh-cn/application-dev/reference/apis/js-apis-ability-context.md)。 + +#### 获取方法 + +在Ability中通过context属性获取。 + +#### 示例代码 + +```js +import Ability from '@ohos.application.Ability' + +export default class MainAbility extends Ability { + onCreate(want, launchParam) { + console.log("[Demo] MainAbility onCreate") + globalThis.abilityWant = want; + } + + onDestroy() { + console.log("[Demo] MainAbility onDestroy") + } + + onWindowStageCreate(windowStage) { + // Main window is created, set main page for this ability + console.log("[Demo] MainAbility onWindowStageCreate") + + // 在这里获取AbilityContext,打印ability的信息 + let context = this.context; + console.log("[Demo] MainAbility bundleName " + context.abilityInfo.bundleName) + + windowStage.setUIContent(this.context, "pages/index", null) + } + + onWindowStageDestroy() { + // Main window is destroyed, release UI related resources + console.log("[Demo] MainAbility onWindowStageDestroy") + } + + onForeground() { + // Ability has brought to foreground + console.log("[Demo] MainAbility onForeground") + } + + onBackground() { + // Ability has back to background + console.log("[Demo] MainAbility onBackground") + } +}; +``` + + + +### application/ExtensionContext + +application/ExtensionContext是ExtensionAbility的基类Context,里面提供了应用的一些基础信息:hapModuleInfo、extensionAbilityInfo等信息。具体接口声明详见:[ExtensionContext接口声明](https://gitee.com/openharmony/interface_sdk-js/blob/master/api/application/ExtensionContext.d.ts),接口文档详见:[ExtensionContext接口文档](https://gitee.com/openharmony/docs/blob/master/zh-cn/application-dev/reference/apis/js-apis-extension-context.md)。 + + + +### application/ServiceExtensionContext + +application/ServiceExtensionContext是ServiceExtension的Context。相比ExtensionContext提供了startAbility的能力。具体接口声明详见:[ServiceExtensionContext接口声明](https://gitee.com/openharmony/interface_sdk-js/blob/master/api/application/ServiceExtensionContext.d.ts),接口文档详见:[ServiceExtensionContext接口文档](https://gitee.com/openharmony/docs/blob/master/zh-cn/application-dev/reference/apis/js-apis-service-extension-context.md)。 + +#### 获取方法 + +在ServiceExtension中通过context属性获取。 + +#### 示例代码 + +```js +import Extension from '@ohos.application.ServiceExtensionAbility' +import rpc from '@ohos.rpc' + +class StubTest extends rpc.RemoteObject { + constructor(des) { + super(des); + } + onRemoteRequest(code, data, reply, option) { + return true; + } + queryLocalInterface(descriptor) { + return null; + } + getInterfaceDescriptor() { + return ""; + } + sendRequest(code, data, reply, options) { + return null; + } + getCallingPid() { + return REQUEST_VALUE; + } + getCallingUid() { + return REQUEST_VALUE; + } + attachLocalInterface(localInterface, descriptor){} +} + +export default class ServiceExtAbility extends Extension { + onCreate(want) { + console.log("[Demo] ServiceExtAbility onDestroy"); + // 在这里获取ServiceExtensionContext,打印extensionAbilityInfo的信息 + let context = this.context; + console.log("[Demo] ServiceExtAbility extensionAbilityInfo: " + JSON.stringify(context.extensionAbilityInfo)); + } + + onRequest(want, startId) { + console.log("[Demo] ServiceExtAbility onDestroy"); + } + + onConnect(want) { + console.log("[Demo] ServiceExtAbility onDestroy"); + return new StubTest("test"); + } + + onDisconnect(want) { + console.log("[Demo] ServiceExtAbility onDestroy"); + } + + onDestroy() { + console.log("[Demo] ServiceExtAbility onDestroy"); + } +} +``` + + + +### application/FormExtensionContext + +application/FormExtensionContext是FormExtension的Context。相比ExtensionContext提供了startAbility的能力。具体接口声明详见:[FormExtensionContext接口声明](https://gitee.com/openharmony/interface_sdk-js/blob/master/api/application/FormExtensionContext.d.ts),接口文档详见:[FormExtensionContext接口文档](https://gitee.com/openharmony/docs/blob/master/zh-cn/application-dev/reference/apis/js-apis-formextensioncontext.md)。 + +#### 获取方法 + +在FormExtension中通过context属性获取。 + +#### 示例代码 + +```js +import FormExtension from '@ohos.application.FormExtension'; +import formBindingData from '@ohos.application.formBindingData'; + +export default class FormAbility extends FormExtension { + onCreate(want) { + console.log("[Demo] FormAbility onCreate"); + let formData = {}; + return formBindingData.createFormBindingData(formData); + } + + onCastToNormal(formId) { + console.log("[Demo] FormAbility onCastToNormal"); + } + + onUpdate(formId) { + console.log("[Demo] FormAbility onUpdate"); + } + + onVisibilityChange(newStatus) { + console.log("[Demo] FormAbility onVisibilityChange"); + } + + onEvent(formId, message) { + console.log("[Demo] FormAbility onEvent"); + // 在卡片生命周期onEvent用于响应点击事件,可以根据点击事件携带的message拉起不同的ability + // 在这里获取FormExtensionContext,并调用startAbility + let want = { + deviceId: "", + bundleName: "com.example.formstartability", + abilityName: "MainAbility", + }; + this.context.startAbility(want); + } + + onDestroy(formId) { + console.log("[Demo] FormAbility onDestroy"); + } +}; +``` + + + +## 场景用法介绍 + +### 在eTS页面中访问Context + +Stage模型下,在Ability的onWindowStageCreate生命周期中,可以通过WindowStage的SetUIContent方法加载一个eTS页面。在一些场景中,需要在页面内获取Context调用相关API。 + +#### 获取方法 + +在eTS页面中通过以下全局方法获取当前页面关联的Context。 + +| 接口名 | 描述 | +| ------------------------------------- | ---------------------------------------- | +| getContext(component: Object): Object | 获取页面中component所关联的Context对象。 | + +#### 示例代码 + +```js +// MainAbility.ts +import Ability from '@ohos.application.Ability' + +export default class MainAbility extends Ability { + onCreate(want, launchParam) { + console.log("[Demo] MainAbility onCreate"); + } + + onDestroy() { + console.log("[Demo] MainAbility onDestroy"); + } + + onWindowStageCreate(windowStage) { + // 加载index页面,并传入当前Context + windowStage.setUIContent(this.context, "pages/index", null); + } + + onWindowStageDestroy() {} + + onForeground() {} + + onBackground() {} +}; +``` + +```js +// pages/index.ets +import context from '@ohos.application.context' + +type Context = context.Context + +@Entry +@Component +struct Index { + build() { + Row() { + Column() { + Text('GetContext') + .fontSize(50) + .fontWeight(FontWeight.Bold) + .onClick(() => { + // 获取当前component关联的Context + var context : Context = getContext(this) as Context + console.info("CacheDir:" + context.cacheDir) + }) + } + .width('100%') + } + .height('100%') + } +} +``` + + + +### 创建其他应用、其他模块的上下文 + +可以通过createBundleContext和createModuleContext创建其他应用或者其他模块的上下文,然后通过这些Context获取对应的资源信息。具体接口声明详见:[Context接口声明](https://gitee.com/openharmony/interface_sdk-js/blob/master/api/application/Context.d.ts)。 + +#### 获取方法 + +通过如下接口可以创建指定的Context。 + +| 接口名 | 描述 | +| ------------------------------------------------------------ | -------------------------- | +| createBundleContext(bundleName: string): Context; | 创建指定应用上下文。 | +| createModuleContext(moduleName: string): Context; | 创建指定模块上下文。 | +| createModuleContext(bundleName: string, moduleName: string): Context; | 创建指定应用模块的上下文。 | + +#### 示例代码 + +例如:桌面上显示的应用信息,包括包名以及包的图标,可以通过如下步骤获取: + +1. 创建其他应用的Context +2. 通过Context里面的resourceManager属性拿到应用的资源信息。 + +```js +import Ability from '@ohos.application.Ability' + +export default class MainAbility extends Ability { + onCreate(want, launchParam) { + console.log("[Demo] MainAbility onCreate"); + } + + onDestroy() { + console.log("[Demo] MainAbility onDestroy"); + } + + onWindowStageCreate(windowStage) { + console.log("[Demo] MainAbility onWindowStageCreate"); + + let context = this.context.createBundleContext("com.example.bundle"); + let bundleLabel = context.resourceManager.getString(context.applicationInfo.descriptionId); + console.log("[Demo] MainAbility bundleLabel: " + bundleLabel); + + // 加载index页面,并传入当前Context + windowStage.setUIContent(this.context, "pages/index", null); + } + + onWindowStageDestroy() {} + + onForeground() {} + + onBackground() {} +}; +``` + + + +### 加密分区的使用 + +应用安装的时候,会创建数据目录。数据目录EL1和EL2是不同的加密分区: + +| 分区 | 说明 | +| ---- | -------------------------------------------- | +| EL1 | 设备开机,未解锁时就能够访问的数据区。 | +| EL2 | 设备开机,首次输入密码后才能够访问的数据区。 | + +通过Context的area属性获取和修改当前加密分区。具体接口声明详见:[Context接口声明](https://gitee.com/openharmony/interface_sdk-js/blob/master/api/application/Context.d.ts)。 + +#### 示例代码 + +```js +import Ability from '@ohos.application.Ability' + +export default class MainAbility extends Ability { + onCreate(want, launchParam) { + console.log("[Demo] MainAbility onCreate"); + } + + onDestroy() { + console.log("[Demo] MainAbility onDestroy"); + } + + onWindowStageCreate(windowStage) { + console.log("[Demo] MainAbility onWindowStageCreate"); + + // area默认值为EL2,获取到的databaseDir在EL2加密分区下 + console.log("[Demo] MainAbility area: " + this.context.area); + console.log("[Demo] MainAbility databaseDir: " + this.context.databaseDir); + // area修改为EL1,获取到的databaseDir也会变为EL1加密分区下 + this.context.area = 0; + console.log("[Demo] MainAbility databaseDir: " + this.context.databaseDir); + + // 加载index页面,并传入当前Context + windowStage.setUIContent(this.context, "pages/index", null); + } + + onWindowStageDestroy() {} + + onForeground() {} + + onBackground() {} +}; +``` + + + +### 应用开发路径的使用 + +Context提供一些路径供应用开发使用,开发者可以通过访问Context的这些属性获取到对应目录。 + +| 路径 | 作用 | 使用场景 | +| -------------- | ------------------ | ------------------------------------------------------------ | +| cacheDir | 应用的缓存目录 | 通过setting用户可以删除该目录下的数据 | +| tempDir | 存放临时数据的目录 | 该目录应用退出后会被清理。 | +| filesDir | 存放文件数据的目录 | 该目录下存放的文件可能会被应用迁移或备份时同步到其他位置处。 | +| databaseDir | 数据库存储的目录 | | +| preferencesDir | 存储键值对的目录 | | + +不同的上下文获取到的开发路径也存在区别,如ApplicationContext的databaseDir是应用下的目录,而AbilityContext的databaseDir是对应模块下的目录。 + +#### 示例代码 + +```js +import Ability from '@ohos.application.Ability' + +export default class MainAbility extends Ability { + onCreate(want, launchParam) { + console.log("[Demo] MainAbility onCreate"); + } + + onDestroy() { + console.log("[Demo] MainAbility onDestroy"); + } + + onWindowStageCreate(windowStage) { + console.log("[Demo] MainAbility onWindowStageCreate"); + + // 获取AbilityContext的databaseDir目录 + console.log("[Demo] MainAbility databaseDir: " + this.context.databaseDir); + // 获取Application的databaseDir目录 + console.log("[Demo] Application databaseDir: " + this.context.getApplicationContext().databaseDir); + + // 加载index页面,并传入当前Context + windowStage.setUIContent(this.context, "pages/index", null); + } + + onWindowStageDestroy() {} + + onForeground() {} + + onBackground() {} +}; +``` + + + +### Context的EventHub + +通过context.eventHub的事件中心,可以进行事件的订阅、取消订阅以及触发事件。具体接口详见:[EventHub](https://gitee.com/openharmony/docs/blob/master/zh-cn/application-dev/reference/apis/js-apis-eventhub.md)。 + + + +## 常见问题 + +### 1. Stage模型通过globalThis去获取Context问题 + +#### 现象描述 + +通过globalThis保存和获取Context,使用时发生错误或者崩溃。 + +#### 可能原因 + +应用框架在API9上推出了新的应用模型(Stage模型)。在老的模型(FA模型)下,每个Ability实例有一个js虚拟机实例,所以可以从js引擎的global对象上,获取到一个全局的Ability实例,但是在新的模型(Stage模型)下,整个应用进程共用一个js虚拟机实例,其中可以运行多个Ability实例,这样就不存在一个全局的Ability实例。如果开发者在新的模型(Stage模型)下,调用的API实现仍然走到了获取全局Ability实例的方法,就可能会发生错误或者崩溃。 + +#### 解决办法 + +不要使用globalThis保存Context,参考上述实例中的获取方法章节获取对应的Context。 + +### 2. 一个应用内不同模块共享数据库问题 + +#### 现象描述 + +一个应用内不同模块的ability无法访问到共享的数据库。 + +#### 可能原因 + +在ability内通过context.databaseDir获取到的数据库目录为模块级别的,跨模块时,就无法正确共享数据库了。 + +#### 解决办法 + +使用应用级别的上下文获取数据库目录:context.getApplicationContext().databaseDir。 diff --git a/figures/contextIntroduction.png b/figures/contextIntroduction.png new file mode 100644 index 0000000000000000000000000000000000000000..69a86df94012b0adf3eb0e8c692e4773aba34d06 GIT binary patch literal 65697 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 literal 0 HcmV?d00001 -- Gitee