From ab5640e05ea8fdf788116037786ffd204196d1bc Mon Sep 17 00:00:00 2001 From: RayShih Date: Fri, 25 Mar 2022 22:31:53 +0800 Subject: [PATCH] fix review mistakes Signed-off-by: RayShih --- .../ability/ability-assistant-guidelines.md | 23 +- .../application-dev/ability/ability-brief.md | 5 +- zh-cn/application-dev/ability/fa-brief.md | 17 +- .../application-dev/ability/fa-dataability.md | 209 ++++++++++-------- .../application-dev/ability/fa-formability.md | 6 +- .../application-dev/ability/fa-pageability.md | 92 ++++---- .../ability/fa-serviceability.md | 33 ++- .../ability/stage-ability-continuation.md | 4 +- .../application-dev/ability/stage-ability.md | 55 ++--- zh-cn/application-dev/ability/stage-call.md | 154 +++++++------ .../application-dev/application-dev-guide.md | 6 +- .../quick-start/package-structure.md | 18 +- .../reference/apis/js-apis-formprovider.md | 12 + .../reference/apis/js-apis-notification.md | 136 ++++++------ .../reference/apis/js-apis-reminderAgent.md | 134 +++++------ .../reference/apis/js-apis-wantAgent.md | 6 + zh-cn/application-dev/ui/Readme-CN.md | 2 +- 17 files changed, 480 insertions(+), 432 deletions(-) diff --git a/zh-cn/application-dev/ability/ability-assistant-guidelines.md b/zh-cn/application-dev/ability/ability-assistant-guidelines.md index 63a4fce860..e52b515f72 100644 --- a/zh-cn/application-dev/ability/ability-assistant-guidelines.md +++ b/zh-cn/application-dev/ability/ability-assistant-guidelines.md @@ -28,13 +28,13 @@ Ability assistant(Ability助手,简称为aa)是实现应用、原子化服 用于启动一个ability。 - | 参数 | 参数说明 | - | --------- | ---------------------- | - | -h/--help | 帮助信息。 | - | -d | 可选参数,device id | - | -a | 必选参数,ability name | - | -b | 必选参数,bundle name | - | -D | 可选参数,调试模式 | + | 参数 | 参数说明 | + | --------- | -------------------------- | + | -h/--help | 帮助信息。 | + | -d | 可选参数,`device id`。 | + | -a | 必选参数,`ability name`。 | + | -b | 必选参数,`bundle name`。 | + | -D | 可选参数,调试模式。 | **返回值:** @@ -77,18 +77,17 @@ Ability assistant(Ability助手,简称为aa)是实现应用、原子化服 | -a/--all | - | 打印所有mission内的Ability。 | | -l/--mission-list | type(缺省打印全部) | 打印任务栈信息。
type:
NORMAL
DEFAULT_STANDARD
DEFAULT_SINGLE
LAUNCHER | | -e/--extension | elementName | 打印扩展组件信息。 | - | -u/--userId | UserId | 打印指定UserId的栈信息,需要和其他参数组合使用,例如 aa dump -a -u 100、aa dump -d -u 100、 | + | -u/--userId | UserId | 打印指定UserId的栈信息,需要和其他参数组合使用,例如 `aa dump -a -u 100`、`aa dump -d -u 100` | | -d/--data | | 打印Data Ability。 | | -i/--ability | AbilityRecord ID | 打印指定Ability详细信息 | - | -c/--client | | 打印Ability详细信息,需要和其他参数组合使用,例如 aa dump -a -c、aa dump -i 21 -c、 | + | -c/--client | | 打印Ability详细信息,需要和其他参数组合使用,例如 `aa dump -a -c`、`aa dump -i 21 -c` | - **使用方法:** - + ``` aa dump -a ``` - + - **force-stop** 通过bundle name强制停止一个进程。 diff --git a/zh-cn/application-dev/ability/ability-brief.md b/zh-cn/application-dev/ability/ability-brief.md index 3d8dbefd18..79b1ff7aa7 100644 --- a/zh-cn/application-dev/ability/ability-brief.md +++ b/zh-cn/application-dev/ability/ability-brief.md @@ -2,7 +2,10 @@ ​ Ability是应用所具备能力的抽象,也是应用程序的重要组成部分。Ability是系统调度应用的最小单元,是能够完成一个独立功能的组件,一个应用可以包含一个或多个Ability。 -​ Ability框架模型结构具有两种形态。第一种形态为FA模型,API 8及其更早版本的应用程序只能使用FA模型进行开发, FA模型将Ability分为FA(Feature Ability)和PA(Particle Ability)两种类型,其中FA支持Page Ability,PA支持Service Ability和Data Ability;从API9开始,Ability框架引入了Stage模型作为第二种应用形态,Stage模型将Ability分为PageAbility和ExtensionAbility两大类,其中ExtensionAbility又被扩展为ServiceExtensionAbility、FormExtensionAbility、DataShareExtensionAbility等等一系列ExtensionAbility,以便满足更多的使用场景。 +​ Ability框架模型结构具有两种形态: + +- 第一种形态为FA模型。API 8及其更早版本的应用程序只能使用FA模型进行开发。 FA模型将Ability分为FA(Feature Ability)和PA(Particle Ability)两种类型,其中FA支持Page Ability,PA支持Service Ability、Data Ability、以及FormAbility; +- 第二种形态为Stage模型。从API 9开始,Ability框架引入了Stage模型作为第二种应用形态,Stage模型将Ability分为PageAbility和ExtensionAbility两大类,其中ExtensionAbility又被扩展为ServiceExtensionAbility、FormExtensionAbility、DataShareExtensionAbility等等一系列ExtensionAbility,以便满足更多的使用场景。 ​ Stage模型的设计,主要是为了方便开发者更加方便地开发出分布式环境下的复杂应用。下表给出了两种模型在设计上的差异: diff --git a/zh-cn/application-dev/ability/fa-brief.md b/zh-cn/application-dev/ability/fa-brief.md index b4708dac96..ed07318bab 100644 --- a/zh-cn/application-dev/ability/fa-brief.md +++ b/zh-cn/application-dev/ability/fa-brief.md @@ -1,19 +1,30 @@ # FA模型综述 ## 整体架构 -OpenHarmony用户程序的开发本质上就是开发Ability,OpenHarmony系统也是通过调度Ability,通过系统提供的一致性调度契约对Ability进行生命周期管理,从而实现对用户程序的调度。FA模型中Ability分为PageAbility、ServiceAbility和DataAbility三种类型。其中PageAbility具备ArkUI的Ability,是用户具体可见并可以交互的Ability实例;ServiceAbility也是Ability一种,但是没有UI,提供其他Ability调用自定义的服务,在后台运行;DataAbility也是没有UI,提供其他Ability进行数据的增删查服务,在后台运行。 +OpenHarmony用户程序的开发本质上就是开发Ability,OpenHarmony系统也是通过调度Ability,通过系统提供的一致性调度契约对Ability进行生命周期管理,从而实现对用户程序的调度。 + +Ability框架在API 8及更早版本使用FA模型。FA模型中Ability分为PageAbility、ServiceAbility、DataAbility、FormAbility几种类型。其中: +- PageAbility是具备ArkUI实现的Ability,是用户具体可见并可以交互的Ability实例; +- ServiceAbility也是Ability一种,但是没有UI,提供其他Ability调用自定义的服务,在后台运行; +- DataAbility也是没有UI的Ability,提供其他Ability进行数据的增删查服务,在后台运行; +- FormAbility是卡片Ability,是一种界面展示形式。 ## 应用包结构 **应用包结构如下图所示:** + ![fa-package-info](figures/fa-package-info.png) +应用包结构的配置请参见[包结构说明](../quick-start/package-structure.md)。 + ## 生命周期 -**pageAbility生命周期回调如下图所示:** +在所有Ability中,PageAbility因为具有界面,也是应用的交互入口,因此生命周期更加复杂。 +**PageAbility生命周期回调如下图所示:** ![fa-pageAbility-lifecycle](figures/fa-pageAbility-lifecycle.png) -开发者可以在 app.js/app.ets 中重写生命周期函数,在对应的生命周期函数内处理应用相应逻辑。 +其他类型Ability的生命周期可参考PageAbility生命周期去除前后台切换以及`onShow`的部分进行理解。 +开发者可以在 `app.js/app.ets` 中重写生命周期函数,在对应的生命周期函数内处理应用相应逻辑。 ## 进程线程模型 diff --git a/zh-cn/application-dev/ability/fa-dataability.md b/zh-cn/application-dev/ability/fa-dataability.md index aa4e4638d2..b45fd499c3 100644 --- a/zh-cn/application-dev/ability/fa-dataability.md +++ b/zh-cn/application-dev/ability/fa-dataability.md @@ -1,6 +1,6 @@ # DataAbility开发指导 ## 场景介绍 -基于Data模板的Ability(以下简称“Data”),有助于应用管理其自身和其他应用存储数据的访问,并提供与其他应用共享数据的方法。Data既可用于同设备不同应用的数据共享,也支持跨设备不同应用的数据共享。 +基于Data模板的Ability(以下简称“Data”),有助于应用管理其自身和其他应用存储数据的访问,并提供与其他应用共享数据的方法。Data既可用于同设备不同应用的数据共享,也支持跨设备不同应用的数据共享。 Data提供方可以自定义数据的增、删、改、查,以及文件打开等功能,并对外提供这些接口。 @@ -27,12 +27,11 @@ Data提供方可以自定义数据的增、删、改、查,以及文件打开 ## 开发步骤 ### 创建Data -1.需要实现Data中Insert,Query,Update,Delete接口的业务内容.保证能够满足数据库存储业务的基本需求.BatchInsert与ExecuteBatch接口已经在系统中实现遍历逻辑,依赖Insert,Query,Update,Delete接口逻辑,来实现数据的批量处理. +1. 需要实现Data中Insert、Query、Update、Delete接口的业务内容。保证能够满足数据库存储业务的基本需求。BatchInsert与ExecuteBatch接口已经在系统中实现遍历逻辑,依赖Insert、Query、Update、Delete接口逻辑,来实现数据的批量处理。 + 创建Data的代码示例如下: -创建Data的代码示例如下: - -```javascript -export default { + ```javascript + export default { onInitialized(abilityInfo) { console.info('DataAbility onInitialized, abilityInfo:' + abilityInfo.bundleName) dataRdb.getRdbStore(STORE_CONFIG, 1, (err, store) => { @@ -73,23 +72,22 @@ export default { let rdbPredicates = dataAbility.createRdbPredicates(TABLE_NAME, predicates) rdbStore.delete(rdbPredicates, callback) } -}; - -``` + }; + ``` -2.子系统配置 +2. 子系统配置 -| Json重要字段 | 备注说明 | -| ------------- | ------------------------------------------------------------ | -| "name" | Ability名子,对应Ability派生的Data类名 | -| "type" | Ability类型,Data对应的Ability类型未"data" | -| "uri" | 通信使用的URI | -| "visible" | 对其他应用是否可见, 设置为true时, Data才能与其他应用进行通信传输数据 | + | Json重要字段 | 备注说明 | + | ------------ | ------------------------------------------------------------ | + | "name" | Ability名称,对应Ability派生的Data类名。 | + | "type" | Ability类型,Data对应的Ability类型为”data“。 | + | "uri" | 通信使用的URI。 | + | "visible" | 对其他应用是否可见,设置为true时,Data才能与其他应用进行通信传输数据。 | -**config.json配置样例** + **config.json配置样例** -```json -"abilities":[{ + ```json + "abilities":[{ "srcPath": "DataAbility", "name": ".DataAbility", "icon": "$media:icon", @@ -98,123 +96,139 @@ export default { "type": "data", "visible": true, "uri": "dataability://ohos.samples.etsdataability.DataAbility" -}] -``` + }] + ``` ### 访问Data -1.JS应用开发前准备 +#### 开发前准备 + +需导入基础依赖包,以及获取与Data子模块通信的Uri字符串。 -基础依赖包: - 1. @ohos.ability.featureAbility - 2. @ohos.data.dataability - 3. @ohos.data.rdb -与Data子系统通信的Uri字符串 +其中,基础依赖包包括: +- @ohos.ability.featureAbility +- @ohos.data.dataability +- @ohos.data.rdb -2.JS应用开发接口 +#### DataAbility接口开发指导 -工具接口类对象创建 -```js -// 作为参数传递的Uri,与config中定义的Uri的区别是多了一个"/",是因为作为参数传递的uri中,在第二个与第三个"/"中间,存在一个DeviceID的参数 -var urivar = "dataability:///com.ix.DataAbility" -var DAHelper = featureAbility.acquireDataAbilityHelper( +1. 创建工具接口类对象。 + ```js + // 作为参数传递的Uri,与config中定义的Uri的区别是多了一个"/",是因为作为参数传递的uri中,在第二个与第三个"/"中间,存在一个DeviceID的参数 + var urivar = "dataability:///com.ix.DataAbility" + var DAHelper = featureAbility.acquireDataAbilityHelper( urivar -); -``` -数据库相关的rdb数据构建 -```js -var valuesBucket = {"name": "gaolu"} -var da = new ohos_data_ability.DataAbilityPredicates() -var valArray =new Array("value1"); -var cars = new Array({"batchInsert1" : "value1",}); -``` -向指定的Data子系统插入数据,inster调用 -```js -// callbacke方式调用: -DAHelper.insert( + ); + ``` +2. 构建数据库相关的rdb数据。 + ```js + var valuesBucket = {"name": "gaolu"} + var da = new ohos_data_ability.DataAbilityPredicates() + var valArray =new Array("value1"); + var cars = new Array({"batchInsert1" : "value1",}); + ``` +3. 调用insert方法向指定的Data子模块插入数据。 + ```js + // callback方式调用: + DAHelper.insert( urivar, valuesBucket, (error, data) => { expect(typeof(data)).assertEqual("number") } -); -// promise方式调用: -var datainsert = await DAHelper.insert( + ); + ``` + + ```js + // promise方式调用: + var datainsert = await DAHelper.insert( urivar, valuesBucket -); -``` -删除Data子系统中指定的数据, delete调用 -```js -// callbacke方式调用: -DAHelper.delete( + ); + ``` +4. 调用delete方法删除Data子模块中指定的数据。 + ```js + // callback方式调用: + DAHelper.delete( urivar, da, (error, data) => { expect(typeof(data)).assertEqual("number") } -); -// promise方式调用: -var datadelete = await DAHelper.delete( + ); + ``` + + ```js + // promise方式调用: + var datadelete = await DAHelper.delete( urivar, da, -); -``` -更新指定Data子系统中的数据, update调用 -```js -// callbacke方式调用: -DAHelper.update( + ); + ``` +5. 调用update方法更新指定Data子模块中的数据。 + ```js + // callback方式调用: + DAHelper.update( urivar valuesBucket, da, (error, data) => { expect(typeof(data)).assertEqual("number") } -); -// promise方式调用: -var dataupdate = await DAHelper.update( + ); + ``` + + ```js + // promise方式调用: + var dataupdate = await DAHelper.update( urivar, valuesBucket, da, -); -``` -在指定的Data子系统中查找数据,query调用 -```js -// callbacke方式调用: -DAHelper.query( + ); + ``` +6. 调用query方法在指定的Data子模块中查找数据。 + ```js + // callback方式调用: + DAHelper.query( urivar, valArray, da, (error, data) => { expect(typeof(data)).assertEqual("object") } -); -// promise方式调用: -var dataquery = await DAHelper.query( + ); + ``` + + ```js + // promise方式调用: + var dataquery = await DAHelper.query( urivar, valArray, da -); -``` -向指定的数据子系统批量插入数据,batchInsert调用 -```js -// callbacke方式调用: -DAHelper.batchInsert( + ); + ``` +7. 调用batchInsert方法向指定的数据子系统批量插入数据。 + ```js + // callback方式调用: + DAHelper.batchInsert( urivar, cars, (error, data) => { expect(typeof(data)).assertEqual("number") } -); -// promise方式调用: -var databatchInsert = await DAHelper.batchInsert( + ); + ``` + + ```js + // promise方式调用: + var databatchInsert = await DAHelper.batchInsert( urivar, cars -); -``` -向指定的Data子系统进行数据的批量处理,executeBatch调用 -```js -// callbacke方式调用: -DAHelper.executeBatch( + ); + ``` +8. 调用executeBatch方法向指定的Data子模块进行数据的批量处理。 + ```js + // callbacke方式调用: + DAHelper.executeBatch( urivar, [ { @@ -230,9 +244,12 @@ DAHelper.executeBatch( (error, data) => { expect(typeof(data)).assertEqual("object") } -); -// promise方式调用: -var dataexecuteBatch = await DAHelper.executeBatch( + ); + ``` + + ```js + // promise方式调用: + var dataexecuteBatch = await DAHelper.executeBatch( urivar, [ { @@ -248,8 +265,8 @@ var dataexecuteBatch = await DAHelper.executeBatch( interrupted:true, } ] -); -``` + ); + ``` ## 开发实例 diff --git a/zh-cn/application-dev/ability/fa-formability.md b/zh-cn/application-dev/ability/fa-formability.md index 38402d2404..524e1d798a 100644 --- a/zh-cn/application-dev/ability/fa-formability.md +++ b/zh-cn/application-dev/ability/fa-formability.md @@ -24,10 +24,10 @@ FA卡片开发,即基于[FA模型](fa-brief.md)的卡片提供方开发,主要涉及如下功能逻辑: -- 卡片生命周期回调函数FormAbility开发。 +- 开发卡片生命周期回调函数FormAbility。 - 创建卡片数据FormBindingData对象。 - 通过FormProvider更新卡片。 -- 卡片页面开发。 +- 开发卡片页面。 ## 接口说明 @@ -164,7 +164,7 @@ Form需要在应用配置文件config.json中进行配置。 | scheduledUpdateTime | 表示卡片的定点刷新的时刻,采用24小时制,精确到分钟。 | 字符串 | 可缺省,缺省值为“0:0”。 | | updateDuration | 表示卡片定时刷新的更新周期,单位为30分钟,取值为自然数。
当取值为0时,表示该参数不生效。
当取值为正整数N时,表示刷新周期为30*N分钟。 | 数值 | 可缺省,缺省值为“0”。 | | formConfigAbility | 表示用于调整卡片的设施或活动的名称。 | 字符串 | 可缺省,缺省值为空。 | - | formVisibleNotify | 标识是否允许卡片使用卡片可见性通知 | 字符串 | 可缺省,缺省值为空。 | + | formVisibleNotify | 标识是否允许卡片使用卡片可见性通知。 | 字符串 | 可缺省,缺省值为空。 | | jsComponentName | 表示JS卡片的Component名称。字符串最大长度为127字节。仅当卡片类型为JS卡片时,需要配置该标签。 | 字符串 | 否 | | metaData | 表示卡片的自定义信息,包含customizeData数组标签。 | 对象 | 可缺省,缺省值为空。 | | customizeData | 表示自定义的卡片信息。 | 对象数组 | 可缺省,缺省值为空。 | diff --git a/zh-cn/application-dev/ability/fa-pageability.md b/zh-cn/application-dev/ability/fa-pageability.md index e41e5cc3a1..3e44e3ff4f 100644 --- a/zh-cn/application-dev/ability/fa-pageability.md +++ b/zh-cn/application-dev/ability/fa-pageability.md @@ -2,13 +2,13 @@ ## 概述 ### 功能简介 -PageAbility是具备ArkUI的Ability,是用户具体可见并可以交互的Ability实例,开发者通过IDE创建Ability时,IDE会自动创建相关模板代码。PageAbility相关能力通过单例featureAbility暴露,生命周期相关回调通过app.js/app.ets中回调函数暴露。 +PageAbility是具备ArkUI实现的Ability,是开发者具体可见并可以交互的Ability实例,开发者通过IDE创建Ability时,IDE会自动创建相关模板代码。PageAbility相关能力通过单例featureAbility暴露,生命周期相关回调通过app.js/app.ets中回调函数暴露。 ### PageAbility的生命周期 -**Ability生命周期介绍**(Ability Life Cycle)是Ability被调度到INACTIVE、ACTIVE、BACKGROUND等各个状态的统称(主要涉及PageAbility类型和ServiceAbility类型的Ability)。 +**Ability生命周期介绍**(Ability Life Cycle): -**PageAbility生命周期流转如下图所示** +Ability生命周期是Ability被调度到INACTIVE、ACTIVE、BACKGROUND等各个状态的统称。PageAbility生命周期流转如下图所示: ![PageAbility-Lifecycle](figures/page-ability-lifecycle.png) @@ -23,13 +23,13 @@ PageAbility是具备ArkUI的Ability,是用户具体可见并可以交互的Abi - **ACTIVE**:前台激活状态,表示当前窗口已显示,并获取焦点。 - - **BACKGROUND**: 后台状态,表示当前Ability退到后台,Ability在被销毁后由BACKGROUND状态进入INITIAL状态,或者重新被激活后由BACKGROUND状态进入ACTIVE状态。 + - **BACKGROUND**:后台状态,表示当前Ability退到后台,Ability在被销毁后由BACKGROUND状态进入INITIAL状态,或者重新被激活后由BACKGROUND状态进入ACTIVE状态。 -**PageAbility生命周期回调如下图所示:** +**PageAbility生命周期回调与生命周期状态的关系如下图所示:** ![fa-pageAbility-lifecycle](figures/fa-pageAbility-lifecycle.png) -PageAbility提供命周期回调,开发者可以在 app.js/app.ets 中重写生相关命周期函数 。 +PageAbility提供命周期回调,开发者可以在`app.js/app.ets`中重写生命周期相关回调函数 。 ## 开发指导 ### featureAbility接口说明 @@ -46,16 +46,17 @@ PageAbility提供命周期回调,开发者可以在 app.js/app.ets 中重写 ### 启动本地PageAbility -* 导入模块 +**导入模块** +```js + import featureAbility from '@ohos.ability.featureAbility' ``` -import featureAbility from '@ohos.ability.featureAbility' -``` -* 示例 + +**示例** ```javascript -import featureAbility from '@ohos.ability.featureAbility' -featureAbility.startAbility({ + import featureAbility from '@ohos.ability.featureAbility' + featureAbility.startAbility({ want: { action: "", @@ -94,14 +95,16 @@ featureAbility.startAbility({ abilityName: "com.example.startability.MainAbility", uri: "" }, -}, -); + }, + ); ``` -want参数也可以使用parameters参数,使用key-value的方式输入。 -* 示例 + +`want`参数也可以使用parameters参数,使用key-value的方式输入。 +**示例** + ```javascript -import featureAbility from '@ohos.ability.featureAbility' -featureAbility.startAbility({ + import featureAbility from '@ohos.ability.featureAbility' + featureAbility.startAbility({ want: { bundleName: "com.example.startability", @@ -110,21 +113,22 @@ featureAbility.startAbility({ abilityName: "com.example.startability.MainAbility" } }, -}, -); + }, + ); ``` -### 启动远程PageAbility(当前仅对系统应用开放) -* 导入模块 +### 启动远程PageAbility(当前仅对系统应用开放) + +**导入模块** ``` -import featureAbility from '@ohos.ability.featureAbility' -import deviceManager from '@ohos.distributedHardware.deviceManager'; + import featureAbility from '@ohos.ability.featureAbility' + import deviceManager from '@ohos.distributedHardware.deviceManager'; ``` -* 示例 +**示例** ```ts -function onStartRemoteAbility() { + function onStartRemoteAbility() { console.info('onStartRemoteAbility begin'); var params; var wantValue = { @@ -140,13 +144,14 @@ function onStartRemoteAbility() { console.info('onStartRemoteAbility finished, ' + JSON.stringify(data)); }); console.info('onStartRemoteAbility end'); -} + } ``` -从DeviceManager获取deviceId,具体示例代码如下: + +从DeviceManager获取`deviceId`,具体示例代码如下: ```ts -import deviceManager from '@ohos.distributedHardware.deviceManager'; -var dmClass; -function getRemoteDeviceId() { + import deviceManager from '@ohos.distributedHardware.deviceManager'; + var dmClass; + function getRemoteDeviceId() { if (typeof dmClass === 'object' && dmClass != null) { var list = dmClass.getTrustedDeviceListSync(); if (typeof (list) == 'undefined' || typeof (list.length) == 'undefined') { @@ -158,13 +163,14 @@ function getRemoteDeviceId() { } else { console.log("MainAbility onButtonClick getRemoteDeviceId err: dmClass is null"); } -} + } ``` -在跨设备场景下,需要向用户申请数据同步的权限。具体示例代码如下: + +在跨设备场景下,需要向开发者申请数据同步的权限。具体示例代码如下: ```ts -import accessControl from "@ohos.abilityAccessCtrl"; -import bundle from '@ohos.bundle'; -async function RequestPermission() { + import accessControl from "@ohos.abilityAccessCtrl"; + import bundle from '@ohos.bundle'; + async function RequestPermission() { console.info('RequestPermission begin'); let array: Array = ["ohos.permission.DISTRIBUTED_DATASYNC"]; var bundleFlag = 0; @@ -194,22 +200,24 @@ async function RequestPermission() { console.info("data authResults:" + data.authResults); }); console.info('RequestPermission end'); -} + } ``` + ### 生命周期接口说明 **表2** 生命周期回调函数介绍 | 接口名 | 描述 | | ------------ | ------------------------------------------------------------ | -| onShow() | Ability由后台不可见状态切换到前台可见状态调用onShow方法,此时用户在屏幕可以看到该Ability | -| onHide() | Ability由前台切换到后台不可见状态时调用onHide方法,此时用户在屏幕看不到该Ability。 | +| onShow() | Ability由后台不可见状态切换到前台可见状态调用onShow方法,此时开发者在屏幕可以看到该Ability | +| onHide() | Ability由前台切换到后台不可见状态时调用onHide方法,此时开发者在屏幕看不到该Ability。 | | onDestroy() | 应用退出,销毁Ability对象前调用onDestroy方法,开发者可以在该方法里做一些回收资源、清空缓存等应用退出前的准备工作。 | | onCreate() | Ability第一次启动创建Ability时调用onCreate方法,开发者可以在该方法里做一些应用初始化工作。 | | onInactive() | Ability失去焦点时调用onInactive方法,Ability在进入后台状态时会先失去焦点,再进入后台。 | | onActive() | Ability切换到前台,并且已经获取焦点时调用onActive方法。 | -* 示例 -开发者需要重写app.js/app.ets 中相关生命周期回调函数,IDE模板默认生成onCreate()和onDestroy()方法,其他方法需要开发者自行实现。 +**示例** +开发者需要重写`app.js/app.ets`中相关生命周期回调函数,IDE模板默认生成`onCreate()`和`onDestroy()`方法,其他方法需要开发者自行实现。 + ```javascript export default { onCreate() { @@ -235,6 +243,6 @@ export default { ### 开发实例 针对pageAbility开发,有以下示例工程可供参考: -- [DMS](https://gitee.com/openharmony/app_samples/tree/master/ability/DMS) +[DMS](https://gitee.com/openharmony/app_samples/tree/master/ability/DMS) 在本示例中完整展示了启动本地Ability、启动远程Ability的使用方法。 \ No newline at end of file diff --git a/zh-cn/application-dev/ability/fa-serviceability.md b/zh-cn/application-dev/ability/fa-serviceability.md index 9432309ed5..7d41a0945e 100644 --- a/zh-cn/application-dev/ability/fa-serviceability.md +++ b/zh-cn/application-dev/ability/fa-serviceability.md @@ -16,13 +16,12 @@ ## 开发步骤 -### 创建Service - -1.Service也是一种Ability,Ability为Service提供了以下生命周期方法,开发者可以重写这些方法,来添加其他Ability请求与Service Ability交互时的处理方法。 - +### 创建Service +1. Service也是一种Ability,Ability为Service提供了以下生命周期方法,开发者可以重写这些方法,来添加其他Ability请求与Service Ability交互时的处理方法。 + 创建Service的代码示例如下: - + ```javascript export default { onStart(want) { @@ -43,11 +42,11 @@ } ``` -2.注册Service。 +2. 注册Service。 - Service也需要在应用配置文件config.json中进行注册,注册类型type需要设置为service。 - - ```javascript + Service也需要在应用配置文件config.json中进行注册,注册类型type需要设置为service。 + + ```javascript { "module": { "abilities": [ @@ -62,13 +61,11 @@ } ... } - ``` - + ``` -​ -### 启动Service +### 启动Service Ability为开发者提供了startAbility()方法来启动另外一个Ability。因为Service也是Ability的一种,开发者同样可以通过将Want传递给该方法来启动Service。 @@ -92,9 +89,9 @@ var promise = await featureAbility.startAbility( ); ``` -- 执行上述代码后,Ability将通过startAbility() 方法来启动Service。 - - 如果Service尚未运行,则系统会先调用onStart()来初始化Service,再回调Service的onCommand()方法来启动Service。 - - 如果Service正在运行,则系统会直接回调Service的onCommand()方法来启动Service。 +执行上述代码后,Ability将通过startAbility() 方法来启动Service。 +- 如果Service尚未运行,则系统会先调用onStart()来初始化Service,再回调Service的onCommand()方法来启动Service。 +- 如果Service正在运行,则系统会直接回调Service的onCommand()方法来启动Service。 @@ -104,7 +101,7 @@ var promise = await featureAbility.startAbility( -### 连接本地Service +### 连接本地Service 如果Service需要与Page Ability或其他应用的Service Ability进行交互,则须创建用于连接的Connection。Service支持其他Ability通过connectAbility()方法与其进行连接。 @@ -183,7 +180,7 @@ export default { } ``` -### 连接远程Service(当前仅对系统应用开放) +### 连接远程Service(当前仅对系统应用开放) 如果Service需要与Page Ability或其他应用的Service Ability进行跨设备交互,则须创建用于连接的Connection。Service支持其他Ability通过connectAbility()方法与其进行跨设备连接。 diff --git a/zh-cn/application-dev/ability/stage-ability-continuation.md b/zh-cn/application-dev/ability/stage-ability-continuation.md index b7e67a1b33..45909d126c 100755 --- a/zh-cn/application-dev/ability/stage-ability-continuation.md +++ b/zh-cn/application-dev/ability/stage-ability-continuation.md @@ -40,7 +40,7 @@ * 配置应用启动类型 - 迁移当前只支持多实例应用,需要在在module.json5中配置launchType字段为standard + 迁移当前只支持多实例应用,需要在在module.json5中配置launchType字段为standard。 ```javascript "launchType": "standard" @@ -59,7 +59,7 @@ }, ``` - 这个权限需要在应用首次启动的时候弹窗让用户授予,可以通过在ability的onWindowStageCreate中添加如下代码实现 + 这个权限需要在应用首次启动的时候弹窗让用户授予,可以通过在ability的onWindowStageCreate中添加如下代码实现: ```javascript requestPermissions = async () => { diff --git a/zh-cn/application-dev/ability/stage-ability.md b/zh-cn/application-dev/ability/stage-ability.md index 565b0351c2..d33f91e16a 100644 --- a/zh-cn/application-dev/ability/stage-ability.md +++ b/zh-cn/application-dev/ability/stage-ability.md @@ -11,7 +11,7 @@ Stage模型是基于API version 9的应用开发模型,对此模型的介绍 - 应用迁移,详见[应用迁移开发指导](stage-ability-continuation.md)。 ## 接口说明 -AbilityStage功能如下:AbilityStage类,拥有context属性,具体的API详见[接口文档](https://gitee.com/openharmony/docs/blob/master/zh-cn/application-dev/reference/apis/js-apis-application-abilitystage.md)。 +AbilityStage功能如下(AbilityStage类,拥有context属性,具体的API详见[接口文档](https://gitee.com/openharmony/docs/blob/master/zh-cn/application-dev/reference/apis/js-apis-application-abilitystage.md)): **表1** AbilityStage API接口功能介绍 |接口名|描述| @@ -20,7 +20,7 @@ AbilityStage功能如下:AbilityStage类,拥有context属性,具体的API |string onAcceptWant(want: Want)|启动指定Ability时被调用。| |void onConfigurationUpdated(config: Configuration)|全局配置发生变更时被调用。| -Ability功能如下:Ability类,具体的API详见[接口文档](https://gitee.com/openharmony/docs/blob/master/zh-cn/application-dev/reference/apis/js-apis-application-ability.md)。 +Ability功能如下(bility类,具体的API详见[接口文档](https://gitee.com/openharmony/docs/blob/master/zh-cn/application-dev/reference/apis/js-apis-application-ability.md)): **表2** Ability API接口功能介绍 |接口名|描述| @@ -53,57 +53,58 @@ Ability类拥有context属性,context属性为AbilityContext类,AbilityConte ## 开发步骤 ### 创建Page Ability应用 创建Stage模型的Page Ability应用,需实现AbilityStage接口及Ability生命周期接口,并使用窗口提供的方法设置页面。具体示例代码如下: -1. 导入AbilityStage模块 -``` -import AbilityStage from "@ohos.application.AbilityStage" -``` -2. 实现AbilityStage接口 -```ts -export default class MyAbilityStage extends AbilityStage { +1. 导入AbilityStage模块。 + ``` + import AbilityStage from "@ohos.application.AbilityStage" + ``` +2. 实现AbilityStage接口。 + ```ts + export default class MyAbilityStage extends AbilityStage { onCreate() { console.log("MyAbilityStage onCreate") } -} -``` -3. 导入Ability模块 -``` -import Ability from '@ohos.application.Ability' -``` -4. 实现Ability生命周期接口 -在`onWindowStageCreate(windowStage)`中通过loadContent接口设置应用要加载的页面,window接口的使用详见[窗口开发指导](https://gitee.com/openharmony/docs/blob/master/zh-cn/application-dev/windowmanager/window-guidelines.md/)。 -```ts -export default class MainAbility extends Ability { + } + ``` +3. 导入Ability模块。 + ```js + import Ability from '@ohos.application.Ability' + ``` +4. 实现Ability生命周期接口。 + + 在`onWindowStageCreate(windowStage)`中通过loadContent接口设置应用要加载的页面,window接口的使用详见[窗口开发指导](https://gitee.com/openharmony/docs/blob/master/zh-cn/application-dev/windowmanager/window-guidelines.md/)。 + ```ts + export default class MainAbility extends Ability { onCreate(want, launchParam) { console.log("MainAbility onCreate") } - + onDestroy() { console.log("MainAbility onDestroy") } - + onWindowStageCreate(windowStage) { console.log("MainAbility onWindowStageCreate") - + windowStage.loadContent("pages/index").then((data) => { console.log("MainAbility load content succeed with data: " + JSON.stringify(data)) }).catch((error) => { console.error("MainAbility load content failed with error: "+ JSON.stringify(error)) }) } - + onWindowStageDestroy() { console.log("MainAbility onWindowStageDestroy") } - + onForeground() { console.log("MainAbility onForeground") } - + onBackground() { console.log("MainAbility onBackground") } -} -``` + } + ``` ### 获取AbilityStage及Ability的配置信息 AbilityStage类及Ability类均拥有context属性,应用可以通过`this.context`获取Ability实例的上下文,进而获取详细的配置信息。如下示例展示了AbilityStage通过context属性获取包代码路径、hap包名、ability名以及系统语言的方法。具体示例代码如下: ```ts diff --git a/zh-cn/application-dev/ability/stage-call.md b/zh-cn/application-dev/ability/stage-call.md index 577bc4c7d8..31f45d3422 100644 --- a/zh-cn/application-dev/ability/stage-call.md +++ b/zh-cn/application-dev/ability/stage-call.md @@ -26,15 +26,16 @@ Caller及Callee功能如下:具体的API详见[接口文档](https://gitee.com ### 创建Callee被调用端 Callee被调用端,需要实现指定方法的数据接收回调函数、数据的序列化及反序列化方法。在需要接收数据期间,通过on接口注册监听,无需接收数据时通过off接口解除监听。 1. 配置Ability的启动模式 -配置module.json5,将Callee被调用端所在的Ability配置为单实例"singleton"。 - -|Json字段|字段说明| -|:------|:------| -|"launchType"|Ability的启动模式,设置为"singleton"类型 | - -Ability配置标签示例如下: -```json -"abilities":[{ + + 配置module.json5,将Callee被调用端所在的Ability配置为单实例"singleton"。 + + |Json字段|字段说明| + |:------|:------| + |"launchType"|Ability的启动模式,设置为"singleton"类型 | + + Ability配置标签示例如下: + ```json + "abilities":[{ "name": ".CalleeAbility", "srcEntrance": "./ets/CalleeAbility/CalleeAbility.ts", "launchType": "singleton", @@ -42,42 +43,46 @@ Ability配置标签示例如下: "icon": "$media:icon", "label": "$string:CalleeAbility_label", "visible": true -}] -``` + }] + ``` + 2. 导入Ability模块 -``` -import Ability from '@ohos.application.Ability' -``` + ``` + import Ability from '@ohos.application.Ability' + ``` + 3. 定义约定的序列化数据 -调用端及被调用端发送接收的数据格式需协商一致,如下示例约定数据由number和string组成。具体示例代码如下: -```ts -export class MySequenceable { + 调用端及被调用端发送接收的数据格式需协商一致,如下示例约定数据由number和string组成。具体示例代码如下: + ```ts + export class MySequenceable { num: number = 0 str: String = "" - + constructor(num, string) { this.num = num this.str = string } - + marshalling(messageParcel) { messageParcel.writeInt(this.num) messageParcel.writeString(this.str) return true } - + unmarshalling(messageParcel) { this.num = messageParcel.readInt() this.str = messageParcel.readString() return true } -} -``` + } + ``` + 4. 实现Callee.on监听及Callee.off解除监听 -被调用端Callee的监听函数注册时机, 取决于应用开发者。注册监听之前的数据不会被处理,取消监听之后的数据不会被处理。如下示例在Ability的onCreate注册'CalleeSortMethod'监听,在onDestroy取消监听,收到序列化数据后对字符串排序后返回,应用开发者根据实际需要做相应处理。具体示例代码如下: -```ts -let TAG = '[CalleeAbility] ' -let method = 'CalleeSortMethod' + + 被调用端Callee的监听函数注册时机, 取决于应用开发者。注册监听之前的数据不会被处理,取消监听之后的数据不会被处理。如下示例在Ability的onCreate注册'CalleeSortMethod'监听,在onDestroy取消监听,收到序列化数据后对字符串排序后返回,应用开发者根据实际需要做相应处理。具体示例代码如下: + ```ts + let TAG = '[CalleeAbility] ' + let method = 'CalleeSortMethod' function CalleeSortFunc(data) { let receiveData = new MySequenceable(0, '') @@ -103,23 +108,24 @@ export default class CalleeAbility extends Ability { } } } -``` + ``` ### 访问Callee被调用端 1. 导入Ability模块 -``` + ``` import Ability from '@ohos.application.Ability' -``` + ``` + 2. 获取Caller通信接口 -Ability的context属性实现了startAbilityByCall方法,用于获取指定通用组件的Caller通信接口。如下示例通过`this.context`获取Ability实例的context属性,使用startAbilityByCall拉起Callee被调用端并获取Caller通信接口,注册Caller的onRelease监听。应用开发者根据实际需要做相应处理。具体示例代码如下: -```ts + + Ability的context属性实现了startAbilityByCall方法,用于获取指定通用组件的Caller通信接口。如下示例通过`this.context`获取Ability实例的context属性,使用startAbilityByCall拉起Callee被调用端并获取Caller通信接口,注册Caller的onRelease监听。应用开发者根据实际需要做相应处理。具体示例代码如下: + ```ts let TAG = '[MainAbility] ' var caller = undefined let context = this.context - context.startAbilityByCall({ - bundleName: 'com.samples.CallApplication', - abilityName: 'CalleeAbility' +bundleName: 'com.samples.CallApplication', +abilityName: 'CalleeAbility' }).then((data) => { if (data != null) { caller = data @@ -130,21 +136,21 @@ context.startAbilityByCall({ }) console.log(TAG + 'caller register OnRelease succeed') } -}).catch((error) => { + }).catch((error) => { console.error(TAG + 'get caller failed with ' + error) -}) -``` -在跨设备场景下,需指定对端设备deviceId。应用开发者 根据实际需要做相应处理。具体示例代码如下: -```ts + }) + ``` + + 在跨设备场景下,需指定对端设备deviceId。应用开发者 根据实际需要做相应处理。具体示例代码如下: + ```ts let TAG = '[MainAbility] ' var caller = undefined let context = this.context - context.startAbilityByCall({ deviceId: getRemoteDeviceId(), bundleName: 'com.samples.CallApplication', abilityName: 'CalleeAbility' -}).then((data) => { + }).then((data) => { if (data != null) { caller = data console.log(TAG + 'get remote caller success') @@ -154,12 +160,13 @@ context.startAbilityByCall({ }) console.log(TAG + 'remote caller register OnRelease succeed') } -}).catch((error) => { + }).catch((error) => { console.error(TAG + 'get remote caller failed with ' + error) -}) -``` -从DeviceManager获取指定设备的deviceId,具体示例代码如下: -```ts + }) + ``` + + 从DeviceManager获取指定设备的deviceId,具体示例代码如下: + ```ts import deviceManager from '@ohos.distributedHardware.deviceManager'; var dmClass; function getRemoteDeviceId() { @@ -175,9 +182,11 @@ function getRemoteDeviceId() { console.log("MainAbility onButtonClick getRemoteDeviceId err: dmClass is null"); } } -``` -在跨设备场景下,需要向用户申请数据同步的权限。具体示例代码如下: -```ts + ``` + + 在跨设备场景下,需要向用户申请数据同步的权限。具体示例代码如下: + + ```ts let context = this.context let permissions = ohos.permission.DISTRIBUTED_DATASYNC context.requestPermissionsFromUser(permissions).then((data) => { @@ -185,24 +194,26 @@ context.requestPermissionsFromUser(permissions).then((data) => { }).catch((error) => { console.log("Failed to request permission from user with error: "+ JSON.stringify(error)) }) -``` + ``` + 3. 发送约定序列化数据 -向被调用端发送Sequenceable数据有两种方式,一种是不带返回值,一种是获取被调用端返回的数据,method以及序列化数据需要与被调用端协商一致。如下示例调用Call接口,向Calee被调用端发送数据。具体示例代码如下: -```ts -let method = 'CalleeSortMethod' -let msg = new MySequenceable(1, 'call_str') -caller.call(method, msg).then(() => { + + 向被调用端发送Sequenceable数据有两种方式,一种是不带返回值,一种是获取被调用端返回的数据,method以及序列化数据需要与被调用端协商一致。如下示例调用Call接口,向Calee被调用端发送数据。具体示例代码如下: + ```ts + let method = 'CalleeSortMethod' + let msg = new MySequenceable(1, 'call_str') + caller.call(method, msg).then(() => { console.log(TAG + 'caller call succeed') }).catch((error) => { console.error(TAG + 'caller call failed with ' + error) -}) -``` - -如下示例调用CallWithResult接口,向Calee被调用端发送待处理的数据,并将method方法处理完毕的数据赋值给callback。具体示例代码如下: -```ts -let method = 'CalleeSortMethod' -let msg = new MySequenceable(1, sortString) -caller.callWithResult(method, msg) + }) + ``` + + 如下示例调用CallWithResult接口,向Calee被调用端发送待处理的数据,并将method方法处理完毕的数据赋值给callback。具体示例代码如下: + ```ts + let method = 'CalleeSortMethod' + let msg = new MySequenceable(1, sortString) + caller.callWithResult(method, msg) .then((data) => { let resultMsg = new MySequenceable(0, '') data.readSequenceable(resultMsg) @@ -210,19 +221,20 @@ caller.callWithResult(method, msg) console.log(TAG + 'caller result is [' + resultMsg.num + ',' + resultMsg.str + ']') }).catch((error) => { console.error(TAG + 'caller callWithResult failed with ' + error) -}) -``` + }) + ``` 4. 释放Caller通信接口 -Caller不再使用后,应用开发者可以通过release接口释放Caller。具体示例代码如下: -```ts -try { + + Caller不再使用后,应用开发者可以通过release接口释放Caller。具体示例代码如下: + ```ts + try { caller.release() caller = undefined console.log(TAG + 'caller release succeed') -} catch (error) { + } catch (error) { console.error(TAG + 'caller release failed with ' + error) -} -``` + } + ``` ## 开发实例 针对Stage模型本地Call功能开发,有以下示例工程可供参考: diff --git a/zh-cn/application-dev/application-dev-guide.md b/zh-cn/application-dev/application-dev-guide.md index d672a0d911..6676f769e4 100644 --- a/zh-cn/application-dev/application-dev-guide.md +++ b/zh-cn/application-dev/application-dev-guide.md @@ -6,11 +6,11 @@ ### 入门 -[入门部分](quick-start/Readme-CN.md),可以帮助开发者了解应用开发的基本方法。 +[入门部分](quick-start/Readme-CN.md)可以帮助开发者了解应用开发的基本方法。 这一部分包含了IDE工具DevEco Studio的基本使用方法,以及快速构建首个应用的快速入门。 -此外,还在此部分详述了OpenHarmony应用包的包结构,以及资源文件的使用指导。 +此外,还在此部分详述了OpenHarmony应用程序的包结构,以及资源文件的使用指导。 ### 开发 @@ -21,7 +21,7 @@ - 应用程序的框架:[Ability开发](ability/Readme-CN.md) - UI的框架:[UI开发](ui/Readme-CN.md) -所有应用都应该在这两个框架下填充和完善功能内容。 +所有应用都应该在这两个框架的基础之上进行功能的开发。 在此基础上,还提供了如下功能的开发指导: - [窗口管理](windowmanager/Readme-CN.md) diff --git a/zh-cn/application-dev/quick-start/package-structure.md b/zh-cn/application-dev/quick-start/package-structure.md index 1339bdb9a6..2ee57571b1 100644 --- a/zh-cn/application-dev/quick-start/package-structure.md +++ b/zh-cn/application-dev/quick-start/package-structure.md @@ -161,20 +161,20 @@ default、phone、tablet、tv、car、wearable、liteWearble等对象的内部 | 属性名称 | 含义 | 数据类型 | 是否可缺省 | | ---------- | -------------------------------- | -------- | ------------------------------ | | reqVersion | 支持应用的maple版本号。参考表8。 | 对象 | 不可缺省 | -| flag | 指定maple应用程序的类型 | 字符串 | 不可缺省且只能为"m","mo","z" | +| flag | 指定maple应用程序的类型。 | 字符串 | 不可缺省且只能为"m","mo","z" | 表8 reqVersion对象内部结构说明 -| 属性名称 | 含义 | 数据类型 | 是否可缺省 | -| ---------- | -------------------------------------------------------- | -------- | ---------- | -| compatible | 表示支持应用程序的最低maple版本,采用32位无符号整形表示。 | 整数 | 不可缺省 | -| target | 指定maple应用程序的类型,采用32位无符号整形表示。 | 整数 | 不可缺省 | +| 属性名称 | 含义 | 数据类型 | 是否可缺省 | +| ---------- | --------------------------------------------------------- | -------- | ---------- | +| compatible | 表示支持应用程序的最低maple版本,采用32位无符号整形表示。 | 整数 | 不可缺省 | +| target | 指定maple应用程序的类型,采用32位无符号整形表示。 | 整数 | 不可缺省 | 表9 network对象的内部结构说明 | 属性名称 | 含义 | 数据类型 | 是否可缺省 | | ---------------- | ------------------------------------------------------------ | -------- | ----------------------- | -| cleartextTraffic | 表示是否允许应用使用明文网络流量(例如,明文HTTP)
true:允许应用使用明文流量请求。
false:拒绝应用使用明文流量的请求。 | 布尔值 | 可缺省,缺省值为"false" | +| cleartextTraffic | 表示是否允许应用使用明文网络流量(例如,明文HTTP)。
true:允许应用使用明文流量请求。
false:拒绝应用使用明文流量的请求。 | 布尔值 | 可缺省,缺省值为"false" | | securityConfig | 表示应用的网络安全配置信息。参考表10。 | 对象 | 可缺省,缺省为空 | 表10 securityConfig对象的内部结构说明 @@ -182,8 +182,8 @@ default、phone、tablet、tv、car、wearable、liteWearble等对象的内部 | 属性名称 | 子属性名称 | 含义 | 数据类型 | 是否可缺省 | | -------------- | ------------------ | ------------------------------------------------------------ | -------- | ---------------- | | domainSettings | - | 表示自定义的网域范围的安全配置,支持多层嵌套,即一个domainSettings对象中允许嵌套更小网域范围的domainSettings对象。 | 对象类型 | 可缺省,缺省为空 | -| | cleartextPermitted | 表示自定义的网域范围内是否允许明文流量传输。当cleartextTraffic和security同时存在时,自定义网域是否允许明文流量传输以cleartextPermitted的取值为准。
true:允许明文流量传输。
false:拒绝明文流量传输 | 布尔类型 | 否 | -| | domains | 表示域名配置信息,包含两个参数:subdomains和name。
subdomains(布尔类型):表示是否包含子域名。如果为"true",此网域规则将与相应网域及所有子网域(包括子网域的子网域)匹配。否则,该规则仅适用于精确匹配项。
name(字符串):表示域名名称 | 对象数组 | 否 | +| | cleartextPermitted | 表示自定义的网域范围内是否允许明文流量传输。当cleartextTraffic和security同时存在时,自定义网域是否允许明文流量传输以cleartextPermitted的取值为准。
true:允许明文流量传输。
false:拒绝明文流量传输。 | 布尔类型 | 否 | +| | domains | 表示域名配置信息,包含两个参数:subdomains和name。
subdomains(布尔类型):表示是否包含子域名。如果为"true",此网域规则将与相应网域及所有子网域(包括子网域的子网域)匹配。否则,该规则仅适用于精确匹配项。
name(字符串):表示域名名称。 | 对象数组 | 否 | deviceConfig示例: @@ -235,7 +235,7 @@ module对象包含HAP包的配置信息,内部结构说明参见表11。 | reqCapabilities | 表示运行应用程序所需的设备能力 | 字符串数组 | 可缺省,缺省为空 | | commonEvents | 静态广播,参考表35。 | 对象数组 | 可缺省,缺省为空 | | allowClassMap | HAP的元信息。标记值为true或false。如果标记值为true,则hap使用OpenHarmony框架提供的Java对象代理机制。默认值为false。 | 布尔值 | 不可缺省,缺省值为false | -| entryTheme | 此标签表示OpenHarmony内部主题的关键字。将标记值设置为名称的资源索引 | 字符串 | 可缺省,缺省值为空 | +| entryTheme | 此标签表示OpenHarmony内部主题的关键字。将标记值设置为名称的资源索引。 | 字符串 | 可缺省,缺省值为空 | module示例: diff --git a/zh-cn/application-dev/reference/apis/js-apis-formprovider.md b/zh-cn/application-dev/reference/apis/js-apis-formprovider.md index 166c2c8b79..6fb633a749 100644 --- a/zh-cn/application-dev/reference/apis/js-apis-formprovider.md +++ b/zh-cn/application-dev/reference/apis/js-apis-formprovider.md @@ -61,6 +61,12 @@ SystemCapability.Ability.Form | formId | string | 是 | 卡片标识 | | minute | number | 是 | 指定多久之后更新,单位分钟,大于等于5 | +**返回值:** + + | 类型 | 说明 | + | ------------- | ---------------------------------- | + | Promise\ |Promise实例,用于获取异步返回结果。 | + **示例:** ```js @@ -118,6 +124,12 @@ SystemCapability.Ability.Form | formId | string | 是 | 请求更新的卡片标识 | | formBindingData | [FormBindingData](js-apis-formbindingdata.md#formbindingdata) | 是 | 用于更新的数据 | +**返回值:** + +| 类型 | 说明 | +| -------------- | ----------------------------------- | +| Promise\ | Promise实例,用于获取异步返回结果。 | + **示例:** ```js diff --git a/zh-cn/application-dev/reference/apis/js-apis-notification.md b/zh-cn/application-dev/reference/apis/js-apis-notification.md index 8f8b24a064..0698d98326 100644 --- a/zh-cn/application-dev/reference/apis/js-apis-notification.md +++ b/zh-cn/application-dev/reference/apis/js-apis-notification.md @@ -188,7 +188,7 @@ Notification.cancel(0, "label", cancelCallback) cancel(id:number, label?:string): Promise\ -取消与指定id相匹配的已发布通知,label可以指定也可以不指定(Promise形式)。 +取消与指定id相匹配的已发布通知,label可以指定也可以不指定(Promise形式)。 **系统能力**:SystemCapability.Notification.Notification @@ -213,7 +213,7 @@ Notification.cancel(0).then(() => { cancel(id: number, callback: AsyncCallback\): void -取消与指定id相匹配的已发布通知(callback形式)。 +取消与指定id相匹配的已发布通知(callback形式)。 **系统能力**:SystemCapability.Notification.Notification @@ -240,7 +240,7 @@ Notification.cancel(0, cancelCallback) cancelAll(callback: AsyncCallback\): void -取消所有已发布的通知(callback形式)。 +取消所有已发布的通知(callback形式)。 **系统能力**:SystemCapability.Notification.Notification @@ -266,7 +266,7 @@ Notification.cancelAll(cancelAllCallback) cancelAll(): Promise\ -取消所有已发布的通知(Promise形式)。 +取消所有已发布的通知(Promise形式)。 **系统能力**:SystemCapability.Notification.Notification @@ -284,7 +284,7 @@ Notification.cancelAll().then(() => { addSlot(slot: NotificationSlot, callback: AsyncCallback\): void -创建通知通道(callback形式)。 +创建通知通道(callback形式)。 **系统能力**:SystemCapability.Notification.Notification @@ -315,7 +315,7 @@ Notification.addSlot(notificationSlot, addSlotCallBack) addSlot(slot: NotificationSlot): Promise\ -创建通知通道(Promise形式)。 +创建通知通道(Promise形式)。 **系统能力**:SystemCapability.Notification.Notification @@ -343,7 +343,7 @@ Notification.addSlot(notificationSlot).then(() => { addSlot(type: SlotType, callback: AsyncCallback\): void -创建通知通道(callback形式)。 +创建通知通道(callback形式)。 **系统能力**:SystemCapability.Notification.Notification @@ -370,7 +370,7 @@ Notification.addSlot(Notification.SlotType.SOCIAL_COMMUNICATION, addSlotCallBack addSlot(type: SlotType): Promise\ -创建通知通道(Promise形式)。 +创建通知通道(Promise形式)。 **系统能力**:SystemCapability.Notification.Notification @@ -394,7 +394,7 @@ Notification.addSlot(Notification.SlotType.SOCIAL_COMMUNICATION).then(() => { addSlots(slots: Array\, callback: AsyncCallback\): void -创建多个通知通道(callback形式)。 +创建多个通知通道(callback形式)。 **系统能力**:SystemCapability.Notification.Notification @@ -429,7 +429,7 @@ Notification.addSlots(notificationSlotArray, addSlotsCallBack) addSlots(slots: Array\): Promise\ -创建多个通知通道(Promise形式)。 +创建多个通知通道(Promise形式)。 **系统能力**:SystemCapability.Notification.Notification @@ -461,7 +461,7 @@ Notification.addSlots(notificationSlotArray).then(() => { getSlot(slotType: SlotType, callback: AsyncCallback\): void -获取一个通知通道(callback形式)。 +获取一个通知通道(callback形式)。 **系统能力**:SystemCapability.Notification.Notification @@ -489,7 +489,7 @@ Notification.getSlot(slotType, getSlotCallback) getSlot(slotType: SlotType): Promise\ -获取一个通知通道(Promise形式)。 +获取一个通知通道(Promise形式)。 **系统能力**:SystemCapability.Notification.Notification @@ -520,7 +520,7 @@ Notification.getSlot(slotType).then((data) => { getSlots(callback: AsyncCallback>): void -获取此应用程序的所有通知通道(callback形式)。 +获取此应用程序的所有通知通道(callback形式)。 **系统能力**:SystemCapability.Notification.Notification @@ -546,7 +546,7 @@ Notification.getSlots(getSlotsCallback) getSlots(): Promise\> -获取此应用程序的所有通知通道(Promise形式)。 +获取此应用程序的所有通知通道(Promise形式)。 **系统能力**:SystemCapability.Notification.Notification @@ -570,7 +570,7 @@ Notification.getSlots().then((data) => { removeSlot(slotType: SlotType, callback: AsyncCallback\): void -根据通知通道类型删除创建的通知通道(callback形式)。 +根据通知通道类型删除创建的通知通道(callback形式)。 **系统能力**:SystemCapability.Notification.Notification @@ -598,7 +598,7 @@ Notification.removeSlot(slotType,removeSlotCallback) removeSlot(slotType: SlotType): Promise\ -根据通知通道类型删除创建的通知通道(Promise形式)。 +根据通知通道类型删除创建的通知通道(Promise形式)。 **系统能力**:SystemCapability.Notification.Notification @@ -623,7 +623,7 @@ Notification.removeSlot(slotType).then(() => { removeAllSlots(callback: AsyncCallback\): void -删除所有通知通道(callback形式)。 +删除所有通知通道(callback形式)。 **系统能力**:SystemCapability.Notification.Notification @@ -648,7 +648,7 @@ Notification.removeAllSlots(removeAllCallBack) removeAllSlots(): Promise\ -删除所有通知通道(Promise形式)。 +删除所有通知通道(Promise形式)。 **系统能力**:SystemCapability.Notification.Notification @@ -666,7 +666,7 @@ Notification.removeAllSlots().then(() => { subscribe(subscriber: NotificationSubscriber, info: NotificationSubscribeInfo, callback: AsyncCallback\): void -订阅通知并指定订阅信息(callback形式)。 +订阅通知并指定订阅信息(callback形式)。 **系统能力**:SystemCapability.Notification.Notification @@ -703,7 +703,7 @@ Notification.subscribe(subscriber, info, subscribeCallback); subscribe(subscriber: NotificationSubscriber, callback: AsyncCallback\): void -订阅通知并指定订阅信息(callback形式)。 +订阅通知并指定订阅信息(callback形式)。 **系统能力**:SystemCapability.Notification.Notification @@ -735,7 +735,7 @@ Notification.subscribe(subscriber, subscribeCallback); subscribe(subscriber: NotificationSubscriber, info?: NotificationSubscribeInfo): Promise\ -订阅通知并指定订阅信息(Promise形式)。 +订阅通知并指定订阅信息(Promise形式)。 **系统能力**:SystemCapability.Notification.Notification @@ -766,7 +766,7 @@ Notification.subscribe(subscriber).then(() => { unsubscribe(subscriber: NotificationSubscriber, callback: AsyncCallback\): void -取消订阅(callbcak形式)。 +取消订阅(callbcak形式)。 **系统能力**:SystemCapability.Notification.Notification @@ -798,7 +798,7 @@ Notification.unsubscribe(subscriber, unsubscribeCallback); unsubscribe(subscriber: NotificationSubscriber): Promise\ -取消订阅(Promise形式)。 +取消订阅(Promise形式)。 **系统能力**:SystemCapability.Notification.Notification @@ -828,7 +828,7 @@ Notification.unsubscribe(subscriber).then(() => { enableNotification(bundle: BundleOption, enable: boolean, callback: AsyncCallback\): void -设定指定包的通知使能状态(Callback形式)。 +设定指定包的通知使能状态(Callback形式)。 **系统能力**:SystemCapability.Notification.Notification @@ -858,7 +858,7 @@ Notification.enableNotification(bundle, false, enableNotificationCallback); enableNotification(bundle: BundleOption, enable: boolean): Promise\ -设定指定包的通知使能状态(Promise形式)。 +设定指定包的通知使能状态(Promise形式)。 **系统能力**:SystemCapability.Notification.Notification @@ -886,7 +886,7 @@ Notification.enableNotification(bundle, false).then(() => { isNotificationEnabled(bundle: BundleOption, callback: AsyncCallback\): void -获取指定包的通知使能状态(Callback形式)。 +获取指定包的通知使能状态(Callback形式)。 **系统能力**:SystemCapability.Notification.Notification @@ -915,7 +915,7 @@ Notification.isNotificationEnabled(bundle, isNotificationEnabledCallback); isNotificationEnabled(bundle: BundleOption): Promise\ -获取指定包的通知使能状态(Promise形式)。 +获取指定包的通知使能状态(Promise形式)。 **系统能力**:SystemCapability.Notification.Notification @@ -948,7 +948,7 @@ Notification.isNotificationEnabled(bundle).then((data) => { isNotificationEnabled(callback: AsyncCallback\): void -获取通知使能状态(Callback形式)。 +获取通知使能状态(Callback形式)。 **系统能力**:SystemCapability.Notification.Notification @@ -974,7 +974,7 @@ Notification.isNotificationEnabled(isNotificationEnabledCallback); isNotificationEnabled(): Promise\ -获取通知使能状态(Promise形式)。 +获取通知使能状态(Promise形式)。 **系统能力**:SystemCapability.Notification.Notification @@ -1004,7 +1004,7 @@ Notification.isNotificationEnabled().then((data) => { displayBadge(bundle: BundleOption, enable: boolean, callback: AsyncCallback\): void -设定指定包的角标使能状态(Callback形式)。 +设定指定包的角标使能状态(Callback形式)。 **系统能力**:SystemCapability.Notification.Notification @@ -1034,7 +1034,7 @@ Notification.displayBadge(bundle, false, displayBadgeCallback); displayBadge(bundle: BundleOption, enable: boolean): Promise\ -设定指定包的角标使能状态(Promise形式)。 +设定指定包的角标使能状态(Promise形式)。 **系统能力**:SystemCapability.Notification.Notification @@ -1062,7 +1062,7 @@ Notification.displayBadge(bundle, false).then(() => { isBadgeDisplayed(bundle: BundleOption, callback: AsyncCallback\): void -获取指定包的角标使能状态(Callback形式)。 +获取指定包的角标使能状态(Callback形式)。 **系统能力**:SystemCapability.Notification.Notification @@ -1091,7 +1091,7 @@ Notification.isBadgeDisplayed(bundle, isBadgeDisplayedCallback); isBadgeDisplayed(bundle: BundleOption): Promise\ -获取指定包的角标使能状态(Promise形式)。 +获取指定包的角标使能状态(Promise形式)。 **系统能力**:SystemCapability.Notification.Notification @@ -1124,7 +1124,7 @@ Notification.isBadgeDisplayed(bundle).then((data) => { setSlotByBundle(bundle: BundleOption, slot: NotificationSlot, callback: AsyncCallback\): void -设定指定包的通知通道状态(Callback形式)。 +设定指定包的通知通道状态(Callback形式)。 **系统能力**:SystemCapability.Notification.Notification @@ -1157,7 +1157,7 @@ Notification.setSlotByBundle(bundle, notificationSlot, setSlotByBundleCallback); setSlotByBundle(bundle: BundleOption, slot: NotificationSlot): Promise\ -设定指定包的角标使能状态(Promise形式)。 +设定指定包的角标使能状态(Promise形式)。 **系统能力**:SystemCapability.Notification.Notification @@ -1188,7 +1188,7 @@ Notification.displayBadge(bundle, notificationSlot).then(() => { getSlotsByBundle(bundle: BundleOption, callback: AsyncCallback>): void -获取指定包的通知通道(Callback形式)。 +获取指定包的通知通道(Callback形式)。 **系统能力**:SystemCapability.Notification.Notification @@ -1217,7 +1217,7 @@ Notification.getSlotsByBundle(bundle, getSlotsByBundleCallback); getSlotsByBundle(bundle: BundleOption): Promise> -获取指定包的通知通道(Promise形式)。 +获取指定包的通知通道(Promise形式)。 **系统能力**:SystemCapability.Notification.Notification @@ -1250,7 +1250,7 @@ Notification.getSlotsByBundle(bundle).then((data) => { getSlotNumByBundle(bundle: BundleOption, callback: AsyncCallback\): void -获取指定包的通知通道数(Callback形式)。 +获取指定包的通知通道数(Callback形式)。 **系统能力**:SystemCapability.Notification.Notification @@ -1279,7 +1279,7 @@ Notification.getSlotNumByBundle(bundle, getSlotNumByBundleCallback); getSlotNumByBundle(bundle: BundleOption): Promise\ -获取指定包的通知通道数(Promise形式)。 +获取指定包的通知通道数(Promise形式)。 **系统能力**:SystemCapability.Notification.Notification @@ -1312,7 +1312,7 @@ Notification.getSlotNumByBundle(bundle).then((data) => { remove(bundle: BundleOption, notificationKey: NotificationKey, callback: AsyncCallback\): void -删除指定通知(Callback形式)。 +删除指定通知(Callback形式)。 **系统能力**:SystemCapability.Notification.Notification @@ -1346,7 +1346,7 @@ Notification.remove(bundle, notificationKey, removeCallback); remove(bundle: BundleOption, notificationKey: NotificationKey): Promise\ -删除指定通知(Promise形式)。 +删除指定通知(Promise形式)。 **系统能力**:SystemCapability.Notification.Notification @@ -1378,7 +1378,7 @@ Notification.remove(bundle, notificationKey).then(() => { remove(hashCode: string, callback: AsyncCallback\): void -删除指定通知(Callback形式)。 +删除指定通知(Callback形式)。 **系统能力**:SystemCapability.Notification.Notification @@ -1405,7 +1405,7 @@ Notification.remove(hashCode, removeCallback); remove(hashCode: string): Promise\ -删除指定通知(Promise形式)。 +删除指定通知(Promise形式)。 **系统能力**:SystemCapability.Notification.Notification @@ -1429,7 +1429,7 @@ Notification.remove(hashCode).then(() => { removeAll(bundle: BundleOption, callback: AsyncCallback\): void -删除指定包的所有通知(Callback形式)。 +删除指定包的所有通知(Callback形式)。 **系统能力**:SystemCapability.Notification.Notification @@ -1458,7 +1458,7 @@ Notification.removeAll(bundle, removeAllCallback); removeAll(callback: AsyncCallback\): void -删除所有通知(Callback形式)。 +删除所有通知(Callback形式)。 **系统能力**:SystemCapability.Notification.Notification @@ -1484,7 +1484,7 @@ Notification.removeAll(removeAllCallback); removeAll(bundle?: BundleOption): Promise\ -删除所有通知(Promise形式)。 +删除所有通知(Promise形式)。 **系统能力**:SystemCapability.Notification.Notification @@ -1506,7 +1506,7 @@ Notification.removeAll().then(() => { removeAll(userId: number, callback: AsyncCallback\): void -删除所有通知(callback形式)。 +删除所有通知(callback形式)。 **系统能力**:SystemCapability.Notification.Notification @@ -1533,7 +1533,7 @@ Notification.removeAll(userId, removeAllCallback); removeAll(userId: number): Promise\ -删除所有通知(Promise形式)。 +删除所有通知(Promise形式)。 **系统能力**:SystemCapability.Notification.Notification @@ -1560,7 +1560,7 @@ Notification.removeAll(userId, removeAllCallback); getAllActiveNotifications(callback: AsyncCallback>): void -获取活动通知(Callback形式)。 +获取活动通知(Callback形式)。 **系统能力**:SystemCapability.Notification.Notification @@ -1586,7 +1586,7 @@ Notification.getAllActiveNotifications(getAllActiveNotificationsCallback); getAllActiveNotifications(): Promise\\> -获取活动通知(Promise形式)。 +获取活动通知(Promise形式)。 **系统能力**:SystemCapability.Notification.Notification @@ -1610,7 +1610,7 @@ Notification.getAllActiveNotifications().then((data) => { getActiveNotificationCount(callback: AsyncCallback\): void -获取当前应用的活动通知数(Callback形式)。 +获取当前应用的活动通知数(Callback形式)。 **系统能力**:SystemCapability.Notification.Notification @@ -1636,7 +1636,7 @@ Notification.getActiveNotificationCount(getActiveNotificationCountCallback); getActiveNotificationCount(): Promise\ -获取当前应用的活动通知数(Promise形式)。 +获取当前应用的活动通知数(Promise形式)。 **系统能力**:SystemCapability.Notification.Notification @@ -1660,7 +1660,7 @@ Notification.getActiveNotificationCount().then((data) => { getActiveNotifications(callback: AsyncCallback>): void -获取当前应用的活动通知(Callback形式)。 +获取当前应用的活动通知(Callback形式)。 **系统能力**:SystemCapability.Notification.Notification @@ -1686,7 +1686,7 @@ Notification.getActiveNotifications(getActiveNotificationsCallback); getActiveNotifications(): Promise\\> -获取当前应用的活动通知(Promise形式)。 +获取当前应用的活动通知(Promise形式)。 **系统能力**:SystemCapability.Notification.Notification @@ -1710,7 +1710,7 @@ Notification.getActiveNotifications().then((data) => { cancelGroup(groupName: string, callback: AsyncCallback\): void -取消本应用指定组通知(Callback形式)。 +取消本应用指定组通知(Callback形式)。 **系统能力**:SystemCapability.Notification.Notification @@ -1739,7 +1739,7 @@ Notification.cancelGroup(groupName, cancelGroupCallback); cancelGroup(groupName: string): Promise\ -取消本应用指定组通知(Promise形式)。 +取消本应用指定组通知(Promise形式)。 **系统能力**:SystemCapability.Notification.Notification @@ -1764,7 +1764,7 @@ Notification.cancelGroup(groupName).then(() => { removeGroupByBundle(bundle: BundleOption, groupName: string, callback: AsyncCallback\): void -删除指定应用指定组通知(Callback形式)。 +删除指定应用指定组通知(Callback形式)。 **系统能力**:SystemCapability.Notification.Notification @@ -1795,7 +1795,7 @@ Notification.removeGroupByBundle(bundleOption, groupName, removeGroupByBundleCal removeGroupByBundle(bundle: BundleOption, groupName: string): Promise\ -删除指定应用指定组通知(Promise形式)。 +删除指定应用指定组通知(Promise形式)。 **系统能力**:SystemCapability.Notification.Notification @@ -1822,7 +1822,7 @@ Notification.removeGroupByBundle(bundleOption, groupName).then(() => { setDoNotDisturbDate(date: DoNotDisturbDate, callback: AsyncCallback\): void -设置免打扰时间(Callback形式)。 +设置免打扰时间(Callback形式)。 **系统能力**:SystemCapability.Notification.Notification @@ -1855,7 +1855,7 @@ Notification.setDoNotDisturbDate(doNotDisturbDate, setDoNotDisturbDateCallback); setDoNotDisturbDate(date: DoNotDisturbDate): Promise\ -设置免打扰时间接口(Promise形式)。 +设置免打扰时间接口(Promise形式)。 **系统能力**:SystemCapability.Notification.Notification @@ -1883,7 +1883,7 @@ Notification.setDoNotDisturbDate(doNotDisturbDate).then(() => { setDoNotDisturbDate(date: DoNotDisturbDate, userId: number, callback: AsyncCallback\): void -指定用户设置免打扰时间(Callback形式)。 +指定用户设置免打扰时间(Callback形式)。 **系统能力**:SystemCapability.Notification.Notification @@ -1919,7 +1919,7 @@ Notification.setDoNotDisturbDate(doNotDisturbDate, userId, setDoNotDisturbDateCa setDoNotDisturbDate(date: DoNotDisturbDate, userId: number): Promise\ -指定用户设置免打扰时间接口(Promise形式)。 +指定用户设置免打扰时间接口(Promise形式)。 **系统能力**:SystemCapability.Notification.Notification @@ -1951,7 +1951,7 @@ Notification.setDoNotDisturbDate(doNotDisturbDate, userId).then(() => { getDoNotDisturbDate(callback: AsyncCallback\): void -查询免打扰时间接口(Callback形式)。 +查询免打扰时间接口(Callback形式)。 **系统能力**:SystemCapability.Notification.Notification @@ -1977,7 +1977,7 @@ Notification.getDoNotDisturbDate(getDoNotDisturbDateCallback); getDoNotDisturbDate(): Promise\ -查询免打扰时间接口(Promise形式)。 +查询免打扰时间接口(Promise形式)。 **系统能力**:SystemCapability.Notification.Notification @@ -2000,7 +2000,7 @@ Notification.getDoNotDisturbDate().then((data) => { getDoNotDisturbDate(userId: number, callback: AsyncCallback\): void -指定用户查询免打扰时间接口(Callback形式)。 +指定用户查询免打扰时间接口(Callback形式)。 **系统能力**:SystemCapability.Notification.Notification @@ -2029,7 +2029,7 @@ Notification.getDoNotDisturbDate(userId, getDoNotDisturbDateCallback); getDoNotDisturbDate(userId: number): Promise\ -指定用户查询免打扰时间接口(Promise形式)。 +指定用户查询免打扰时间接口(Promise形式)。 **系统能力**:SystemCapability.Notification.Notification @@ -2060,7 +2060,7 @@ Notification.getDoNotDisturbDate(userId).then((data) => { supportDoNotDisturbMode(callback: AsyncCallback\): void -查询是否支持勿扰模式功能(Callback形式)。 +查询是否支持勿扰模式功能(Callback形式)。 **系统能力**:SystemCapability.Notification.Notification @@ -2086,7 +2086,7 @@ Notification.supportDoNotDisturbMode(supportDoNotDisturbModeCallback); supportDoNotDisturbMode(): Promise\ -查询是否支持勿扰模式功能(Promise形式)。 +查询是否支持勿扰模式功能(Promise形式)。 **系统能力**:SystemCapability.Notification.Notification diff --git a/zh-cn/application-dev/reference/apis/js-apis-reminderAgent.md b/zh-cn/application-dev/reference/apis/js-apis-reminderAgent.md index 6d730429a2..e35a80d90a 100644 --- a/zh-cn/application-dev/reference/apis/js-apis-reminderAgent.md +++ b/zh-cn/application-dev/reference/apis/js-apis-reminderAgent.md @@ -22,19 +22,20 @@ publishReminder(reminderReq: ReminderRequest, callback: AsyncCallback<number& 发布一个后台代理提醒,使用callback方式实现异步调用。 -- 系统能力 +**系统能力**: SystemCapability.Notification.ReminderAgent - SystemCapability.Notification.ReminderAgent +**参数**: -- 参数 | 参数名 | 类型 | 必填 | 说明 | | -------- | -------- | -------- | -------- | | reminderReq | [ReminderRequest](#reminderrequest) | 是 | 需要发布的提醒实例。 | | callback | AsyncCallback<number> | 是 | 异步回调,返回当前发布的提醒的reminderId。 | -- 示例: +**示例**: ``` - export default { data: {timer: { + export default { + data: { + timer: { reminderType: reminderAgent.ReminderType.REMINDER_TYPE_TIMER, triggerTimeInSeconds: 3 } @@ -53,23 +54,23 @@ publishReminder(reminderReq: ReminderRequest): Promise<number> 发布一个后台代理提醒,使用Promise方式实现异步调用。 -- 系统能力 +**系统能力**: SystemCapability.Notification.ReminderAgent - SystemCapability.Notification.ReminderAgent - -- 参数 +**参数**: | 参数名 | 类型 | 必填 | 说明 | | -------- | -------- | -------- | -------- | | reminderReq | [ReminderRequest](#reminderrequest) | 是 | 需要发布的提醒实例。 | -- 返回值: +**返回值**: | 类型 | 说明 | | -------- | -------- | | Promise<number> | 返回提醒的reminderId。 | -- 示例 +**示例**: ``` - export default { data: {timer: { + export default { + data: + {timer: { reminderType: reminderAgent.ReminderType.REMINDER_TYPE_TIMER, triggerTimeInSeconds: 3 } @@ -89,22 +90,21 @@ cancelReminder(reminderId: number, callback: AsyncCallback<void>): void 取消指定id的提醒,使用callback方式实现异步调用。 -- 系统能力 - - SystemCapability.Notification.ReminderAgent +**系统能力**: SystemCapability.Notification.ReminderAgent -- 参数 +**参数**: | 参数名 | 类型 | 必填 | 说明 | | -------- | -------- | -------- | -------- | | reminderId | number | 是 | 目标reminder的id号。 | | callback | AsyncCallback<void> | 是 | 异步回调。 | -- 示例 +**示例**: ``` export default { - cancel() { reminderAgent.cancelReminder(1, (err, data) => { + cancel() { + reminderAgent.cancelReminder(1, (err, data) => { console.log("do next"); }); } @@ -118,23 +118,21 @@ cancelReminder(reminderId: number): Promise<void> 取消指定id的提醒,使用Promise方式实现异步调用。 -- 系统能力 +**系统能力**: SystemCapability.Notification.ReminderAgent - SystemCapability.Notification.ReminderAgent - -- 参数 +**参数**: | 参数名 | 类型 | 必填 | 说明 | | -------- | -------- | -------- | -------- | | reminderId | number | 是 | 目标reminder的id号。 | -- 返回值 +**返回值**: | 类型 | 说明 | | -------- | -------- | | Promise<void> | Promise类型异步回调。 | -- 示例 +**示例**: ``` export default { @@ -153,17 +151,15 @@ getValidReminders(callback: AsyncCallback<Array<ReminderRequest>>): 获取当前应用已设置的所有有效(未过期)的提醒,使用callback方式实现异步调用。 -- 系统能力 - - SystemCapability.Notification.ReminderAgent +**系统能力**: SystemCapability.Notification.ReminderAgent -- 参数 +**参数**: | 参数名 | 类型 | 必填 | 说明 | | -------- | -------- | -------- | -------- | | callback | AsyncCallback<Array<[ReminderRequest](#reminderrequest)>> | 是 | 异步回调,返回当前应用已设置的所有有效(未过期)的提醒。 | -- 示例 +**示例**: ``` reminderAgent.getValidReminders((err, reminders) => { @@ -198,17 +194,15 @@ getValidReminders(): Promise<Array<ReminderRequest>> 获取当前应用已设置的所有有效(未过期)的提醒,使用Promise方式实现异步调用。 -- 系统能力 - - SystemCapability.Notification.ReminderAgent +**系统能力**: SystemCapability.Notification.ReminderAgent -- 返回值 +**返回值**: | 类型 | 说明 | | -------- | -------- | | Promise<Array<[ReminderRequest](#reminderrequest)>> | 返回当前应用已设置的所有有效(未过期)的提醒。 | -- 示例 +**示例**: ``` reminderAgent.getValidReminders().then((reminders) => { @@ -243,17 +237,15 @@ cancelAllReminders(callback: AsyncCallback<void>): void 取消当前应用所有的提醒,使用callback方式实现异步调用。 -- 系统能力 +**系统能力**: SystemCapability.Notification.ReminderAgent - SystemCapability.Notification.ReminderAgent - -- 参数 +**参数**: | 参数名 | 类型 | 必填 | 说明 | | -------- | -------- | -------- | -------- | | callback | AsyncCallback<void> | 是 | 异步回调。 | -- 示例 +**示例**: ``` reminderAgent.cancelAllReminders((err, data) =>{ @@ -267,17 +259,15 @@ cancelAllReminders(): Promise<void> 取消当前应用所有的提醒,使用Promise方式实现异步调用。 -- 系统能力 - - SystemCapability.Notification.ReminderAgent +**系统能力**: SystemCapability.Notification.ReminderAgent -- 返回值 +**返回值**: | 类型 | 说明 | | -------- | -------- | | Promise<void> | Promise类型异步回调。 | -- 示例 +**示例**: ``` reminderAgent.cancelAllReminders().then(() => { @@ -291,18 +281,16 @@ addNotificationSlot(slot: NotificationSlot, callback: AsyncCallback<void>) 添加一个NotificationSlot,使用callback方式实现异步调用。 -- 系统能力 - - SystemCapability.Notification.ReminderAgent +**系统能力**: SystemCapability.Notification.ReminderAgent -- 参数 +**参数**: | 参数名 | 类型 | 必填 | 说明 | | -------- | -------- | -------- | -------- | | slot | [NotificationSlot](js-apis-notification.md#notificationslot) | 是 | notification slot实例。 | | callback | AsyncCallback<void> | 是 | 异步回调。 | -- 示例 +**示例**: ``` export default { data: { mySlot: { @@ -324,23 +312,21 @@ addNotificationSlot(slot: NotificationSlot): Promise<void> 添加一个NotificationSlot,使用Promise方式实现异步调用。 -- 系统能力 +**系统能力**: SystemCapability.Notification.ReminderAgent - SystemCapability.Notification.ReminderAgent - -- 参数 +**参数**: | 参数名 | 类型 | 必填 | 说明 | | -------- | -------- | -------- | -------- | | slot | [NotificationSlot](js-apis-notification.md#notificationslot) | 是 | notification slot实例。 | -- 返回值 +**返回值**: | 类型 | 说明 | | -------- | -------- | | Promise<void> | Promise类型异步回调。 | -- 示例 +**示例**: ``` export default { data: { mySlot: { @@ -362,18 +348,16 @@ removeNotificationSlot(slotType: notification.SlotType, callback: AsyncCallback& 删除目标NotificationSlot,使用callback方式实现异步调用。 -- 系统能力 - - SystemCapability.Notification.ReminderAgent +**系统能力**: SystemCapability.Notification.ReminderAgent -- 参数 +**参数**: | 参数名 | 类型 | 必填 | 说明 | | -------- | -------- | -------- | -------- | | slotType | [notification.SlotType](js-apis-notification.md#slottype) | 是 | 目标notification slot的类型。 | | callback | AsyncCallback<void> | 是 | 异步回调。 | -- 示例 +**示例**: ``` export default { @@ -391,23 +375,21 @@ removeNotificationSlot(slotType: notification.SlotType): Promise<void> 删除目标NotificationSlot,使用Promise方式实现异步调用。 -- 系统能力 - - SystemCapability.Notification.ReminderAgent +**系统能力**: SystemCapability.Notification.ReminderAgent -- 参数 +**参数**: | 参数名 | 类型 | 必填 | 说明 | | -------- | -------- | -------- | -------- | | slotType | [notification.SlotType](js-apis-notification.md#slottype) | 是 | 目标notification slot的类型。 | -- 返回值 +**返回值**: | 类型 | 说明 | | -------- | -------- | | Promise<void> | Promise类型异步回调。 | -- 示例 +**示例**: ``` export default { @@ -423,7 +405,7 @@ export default { 按钮的类型。 -- 系统能力:以下各项对应的系统能力均为SystemCapability.Notification.ReminderAgent +**系统能力**:以下各项对应的系统能力均为SystemCapability.Notification.ReminderAgent | 名称 | 默认值 | 说明 | | -------- | -------- | -------- | @@ -435,7 +417,7 @@ export default { 提醒的类型。 -- 系统能力:以下各项对应的系统能力均为SystemCapability.Notification.ReminderAgent +**系统能力**:以下各项对应的系统能力均为SystemCapability.Notification.ReminderAgent | 名称 | 默认值 | 说明 | | -------- | -------- | -------- | @@ -448,7 +430,7 @@ export default { 用于设置弹出的提醒通知信息上显示的按钮类型和标题。 -- 系统能力:以下各项对应的系统能力均为SystemCapability.Notification.ReminderAgent +**系统能力**:以下各项对应的系统能力均为SystemCapability.Notification.ReminderAgent | 名称 | 参数类型 | 必填 | 说明 | | -------- | -------- | -------- | -------- | @@ -460,7 +442,7 @@ export default { 点击提醒通知后跳转的目标ability信息。 -- 系统能力:以下各项对应的系统能力均为SystemCapability.Notification.ReminderAgent +**系统能力**:以下各项对应的系统能力均为SystemCapability.Notification.ReminderAgent | 名称 | 参数类型 | 必填 | 说明 | | -------- | -------- | -------- | -------- | @@ -472,7 +454,7 @@ export default { 提醒到达时自动拉起的目标ability信息。 -- 系统能力:以下各项对应的系统能力均为SystemCapability.Notification.ReminderAgent +**系统能力**:以下各项对应的系统能力均为SystemCapability.Notification.ReminderAgent | 名称 | 参数类型 | 必填 | 说明 | | -------- | -------- | -------- | -------- | @@ -484,7 +466,7 @@ export default { 提醒实例对象,用于设置提醒类型、响铃时长等具体信息。 -- 系统能力:以下各项对应的系统能力均为SystemCapability.Notification.ReminderAgent +**系统能力**:以下各项对应的系统能力均为SystemCapability.Notification.ReminderAgent | 名称 | 参数类型 | 必填 | 说明 | | -------- | -------- | -------- | -------- | @@ -509,7 +491,7 @@ ReminderRequestCalendar extends ReminderRequest 日历实例对象,用于设置提醒的时间。 -- 系统能力:以下各项对应的系统能力均为SystemCapability.Notification.ReminderAgent +**系统能力**:以下各项对应的系统能力均为SystemCapability.Notification.ReminderAgent | 名称 | 参数类型 | 必填 | 说明 | | -------- | -------- | -------- | -------- | @@ -524,7 +506,7 @@ ReminderRequestAlarm extends ReminderRequest 闹钟实例对象,用于设置提醒的时间。 -- 系统能力:以下各项对应的系统能力均为SystemCapability.Notification.ReminderAgent +**系统能力**:以下各项对应的系统能力均为SystemCapability.Notification.ReminderAgent | 名称 | 参数类型 | 必填 | 说明 | | -------- | -------- | -------- | -------- | @@ -539,7 +521,7 @@ ReminderRequestTimer extends ReminderRequest 倒计时实例对象,用于设置提醒的时间。 -- 系统能力:SystemCapability.Notification.ReminderAgent +**系统能力**:SystemCapability.Notification.ReminderAgent | 名称 | 参数类型 | 必填 | 说明 | | -------- | -------- | -------- | -------- | @@ -550,7 +532,7 @@ ReminderRequestTimer extends ReminderRequest 用于日历类提醒设置时指定时间信息。 -- 系统能力:以下各项对应的系统能力均为SystemCapability.Notification.ReminderAgent +**系统能力**:以下各项对应的系统能力均为SystemCapability.Notification.ReminderAgent | 名称 | 参数类型 | 必填 | 说明 | | -------- | -------- | -------- | -------- | diff --git a/zh-cn/application-dev/reference/apis/js-apis-wantAgent.md b/zh-cn/application-dev/reference/apis/js-apis-wantAgent.md index 49dbbfd6d9..ddf3b3ec58 100644 --- a/zh-cn/application-dev/reference/apis/js-apis-wantAgent.md +++ b/zh-cn/application-dev/reference/apis/js-apis-wantAgent.md @@ -638,6 +638,12 @@ cancel(agent: WantAgent): Promise\ | ----- | --- | ---- | --------- | ---- | ------------- | | agent | 是 | 否 | WantAgent | 是 | WantAgent对象。 | +**返回值:** + +| 类型 | 说明 | +| --------------- | ------------------------------- | +| Promise\ | 以Promise形式获取异步返回结果。 | + **示例:** ```js diff --git a/zh-cn/application-dev/ui/Readme-CN.md b/zh-cn/application-dev/ui/Readme-CN.md index c3b5b7471a..1e3f2a7a5d 100755 --- a/zh-cn/application-dev/ui/Readme-CN.md +++ b/zh-cn/application-dev/ui/Readme-CN.md @@ -1,4 +1,4 @@ -# UI +# UI开发 - [方舟开发框架(ArkUI)概述](arkui-overview.md) - 基于JS扩展的类Web开发范式 -- GitLab