diff --git a/zh-cn/application-dev/application-models/actions-entities.md b/zh-cn/application-dev/application-models/actions-entities.md
index 03dac0817a7f92076f49e4a77eb9da1cd0e69655..91c95361b38718b908a021b923fc0653ca6dad47 100644
--- a/zh-cn/application-dev/application-models/actions-entities.md
+++ b/zh-cn/application-dev/application-models/actions-entities.md
@@ -1,6 +1,6 @@
# 常见action与entities
-**[action](../reference/apis/js-apis-app-ability-wantConstant.md#wantconstantaction)**:表示调用方要执行的通用操作(如查看、分享、应用详情)。在隐式Want中,您可定义该字段,配合uri或parameters来表示对数据要执行的操作。如打开,查看该uri数据。例如,当uri为一段网址,action为ohos.want.action.viewData则表示匹配可查看该网址的Ability。在Want内声明action字段表示希望被调用方应用支持声明的操作。在被调用方应用配置文件skills字段内声明actions表示该应用支持声明操作。
+**action**:表示调用方要执行的通用操作(如查看、分享、应用详情)。在隐式Want中,您可定义该字段,配合uri或parameters来表示对数据要执行的操作。如打开,查看该uri数据。例如,当uri为一段网址,action为ohos.want.action.viewData则表示匹配可查看该网址的Ability。在Want内声明action字段表示希望被调用方应用支持声明的操作。在被调用方应用配置文件skills字段内声明actions表示该应用支持声明操作。
**常见action**
@@ -14,7 +14,7 @@
- ACTION_VIEW_MULTIPLE_DATA:发送多个数据记录的操作。
-**[entities](../reference/apis/js-apis-app-ability-wantConstant.md#wantconstantentity)**:表示目标Ability的类别信息(如浏览器、视频播放器),在隐式Want中是对action的补充。在隐式Want中,开发者可定义该字段,来过滤匹配应用的类别,例如必须是浏览器。在Want内声明entities字段表示希望被调用方应用属于声明的类别。在被调用方应用配置文件skills字段内声明entites表示该应用支持的类别。
+**entities**:表示目标Ability的类别信息(如浏览器、视频播放器),在隐式Want中是对action的补充。在隐式Want中,开发者可定义该字段,来过滤匹配应用的类别,例如必须是浏览器。在Want内声明entities字段表示希望被调用方应用属于声明的类别。在被调用方应用配置文件skills字段内声明entites表示该应用支持的类别。
**常用entities**
diff --git a/zh-cn/application-dev/application-models/application-context-stage.md b/zh-cn/application-dev/application-models/application-context-stage.md
index 02b9a773b585efd248302ee267416a1454bacb22..7c53f663cbe6976331fd5d5030928bbfb084d5b4 100644
--- a/zh-cn/application-dev/application-models/application-context-stage.md
+++ b/zh-cn/application-dev/application-models/application-context-stage.md
@@ -23,6 +23,10 @@
}
}
```
+
+ > **说明:**
+ >
+ > 页面中获取UIAbility实例的上下文信息请参见[获取UIAbility的上下文信息](uiability-usage.md#获取uiability的上下文信息)。
- 获取特定场景[ExtensionContext](../reference/apis/js-apis-inner-application-extensionContext.md)。以ServiceExtensionContext为例,表示后台服务的上下文环境,继承自ExtensionContext,提供后台服务相关的接口能力。
```ts
diff --git a/zh-cn/application-dev/application-models/explicit-implicit-want-mappings.md b/zh-cn/application-dev/application-models/explicit-implicit-want-mappings.md
index 4d79a19ba55ae1559fb651a669dbb1d7ef459873..0317239771a3f05c6daf946dac0bce903ca612fd 100644
--- a/zh-cn/application-dev/application-models/explicit-implicit-want-mappings.md
+++ b/zh-cn/application-dev/application-models/explicit-implicit-want-mappings.md
@@ -50,7 +50,7 @@
### want参数的action匹配规则
-将调用方传入的want参数的[action](../reference/apis/js-apis-app-ability-wantConstant.md#wantconstantaction)与待匹配Ability的skills配置中的actions进行匹配。
+将调用方传入的want参数的action与待匹配Ability的skills配置中的actions进行匹配。
- 调用方传入的want参数的action不为空,待匹配Ability的skills配置中的actions为空,则action匹配失败。
@@ -66,7 +66,7 @@
### want参数的entities匹配规则
-将调用方传入的want参数的[entities](../reference/apis/js-apis-app-ability-wantConstant.md#wantconstantentity)与待匹配Ability的skills配置中的entities进行匹配。
+将调用方传入的want参数的entities与待匹配Ability的skills配置中的entities进行匹配。
- 调用方传入的want参数的entities为空,待匹配Ability的skills配置中的entities不为空,则entities匹配成功。
diff --git a/zh-cn/application-dev/application-models/uiability-intra-device-interaction.md b/zh-cn/application-dev/application-models/uiability-intra-device-interaction.md
index 7c52870b517f6ed8bc8e4028b17d3b770659f0c5..3bcbb7abdebc7decc8dc9f2effbb8ee227bdf289 100644
--- a/zh-cn/application-dev/application-models/uiability-intra-device-interaction.md
+++ b/zh-cn/application-dev/application-models/uiability-intra-device-interaction.md
@@ -74,6 +74,8 @@ UIAbility是系统调度的最小单元。在设备内的功能模块之间跳
> **说明:**
>
> 调用[terminateSelf()](../reference/apis/js-apis-inner-application-uiAbilityContext.md#uiabilitycontextterminateself)方法停止当前UIAbility实例时,默认会保留该实例的快照(Snapshot),即在最近任务列表中仍然能查看到该实例对应的任务。如不需要保留该实例的快照,可以在其对应UIAbility的[module.json5配置文件](../quick-start/module-configuration-file.md)中,将[abilities标签](../quick-start/module-configuration-file.md#abilities标签)的removeMissionAfterTerminate字段配置为true。
+
+4. 如需要关闭应用所有的UIAbility实例,可以调用[ApplicationContext](../reference/apis/js-apis-inner-application-applicationContext.md)的killProcessBySelf()方法实现关闭应用所有的进程。
## 启动应用内的UIAbility并获取返回结果
@@ -149,11 +151,11 @@ UIAbility是系统调度的最小单元。在设备内的功能模块之间跳
- 显式Want启动:启动一个确定应用的UIAbility,在want参数中需要设置该应用bundleName和abilityName,当需要拉起某个明确的UIAbility时,通常使用显式Want启动方式。
-- 隐式Want启动:根据匹配条件由用户选择启动哪一个UIAbility,即不明确指出要启动哪一个UIAbility(abilityName参数未设置),在调用[startAbility()](../reference/apis/js-apis-inner-application-uiAbilityContext.md#uiabilitycontextstartability)方法时,其入参want中指定了一系列的[entities](../reference/apis/js-apis-app-ability-wantConstant.md#wantconstantentity)字段(表示目标UIAbility额外的类别信息,如浏览器、视频播放器)和[actions](../reference/apis/js-apis-app-ability-wantConstant.md#wantconstantaction)字段(表示要执行的通用操作,如查看、分享、应用详情等)等参数信息,然后由系统去分析want,并帮助找到合适的UIAbility来启动。当需要拉起其他应用的UIAbility时,开发者通常不知道用户设备中应用的安装情况,也无法确定目标应用的bundleName和abilityName,通常使用隐式Want启动方式。
+- 隐式Want启动:根据匹配条件由用户选择启动哪一个UIAbility,即不明确指出要启动哪一个UIAbility(abilityName参数未设置),在调用[startAbility()](../reference/apis/js-apis-inner-application-uiAbilityContext.md#uiabilitycontextstartability)方法时,其入参want中指定了一系列的entities字段(表示目标UIAbility额外的类别信息,如浏览器、视频播放器)和actions字段(表示要执行的通用操作,如查看、分享、应用详情等)等参数信息,然后由系统去分析want,并帮助找到合适的UIAbility来启动。当需要拉起其他应用的UIAbility时,开发者通常不知道用户设备中应用的安装情况,也无法确定目标应用的bundleName和abilityName,通常使用隐式Want启动方式。
本章节主要讲解如何通过隐式Want启动其他应用的UIAbility。
-1. 将多个待匹配的文档应用安装到设备,在其对应UIAbility的[module.json5配置文件](../quick-start/module-configuration-file.md)中,配置skills的[entities](../reference/apis/js-apis-app-ability-wantConstant.md#wantconstantentity)字段和[actions](../reference/apis/js-apis-app-ability-wantConstant.md#wantconstantaction)字段。
+1. 将多个待匹配的文档应用安装到设备,在其对应UIAbility的[module.json5配置文件](../quick-start/module-configuration-file.md)中,配置skills的entities字段和actions字段。
```json
{
@@ -216,7 +218,7 @@ UIAbility是系统调度的最小单元。在设备内的功能模块之间跳
当使用隐式Want启动其他应用的UIAbility并希望获取返回结果时,调用方需要使用[startAbilityForResult()](../reference/apis/js-apis-inner-application-uiAbilityContext.md#uiabilitycontextterminateselfwithresult)方法启动目标UIAbility。例如主应用中需要启动三方支付并获取支付结果。
-1. 在支付应用对应UIAbility的module.json5配置文件中,配置skills的[entities](../reference/apis/js-apis-app-ability-wantConstant.md#wantconstantentity)字段和[actions](../reference/apis/js-apis-app-ability-wantConstant.md#wantconstantaction)字段。
+1. 在支付应用对应UIAbility的module.json5配置文件中,配置skills的entities字段和actions字段。
```json
{
diff --git a/zh-cn/application-dev/notification/notification-with-wantagent.md b/zh-cn/application-dev/notification/notification-with-wantagent.md
index 11be42034421621dae098efd8c05da189df955ed..83208e2f85841040a5f5c0008e1d766f900d8fff 100644
--- a/zh-cn/application-dev/notification/notification-with-wantagent.md
+++ b/zh-cn/application-dev/notification/notification-with-wantagent.md
@@ -96,7 +96,7 @@
```typescript
// 构造NotificationRequest对象
- let notificationRequest = {
+ let notificationRequest: notificationManager.NotificationRequest = {
content: {
contentType: notificationManager.ContentType.NOTIFICATION_CONTENT_BASIC_TEXT,
normal: {
diff --git a/zh-cn/application-dev/notification/progress-bar-notification.md b/zh-cn/application-dev/notification/progress-bar-notification.md
index 233948f2e8622a1279e08550fbf5b5cc0d22facb..f8ea20e12108e82bf8d6a6f764ba264cea7add14 100644
--- a/zh-cn/application-dev/notification/progress-bar-notification.md
+++ b/zh-cn/application-dev/notification/progress-bar-notification.md
@@ -45,7 +45,7 @@
4. 构造进度条模板对象,并发布通知。
```ts
- let notificationRequest = {
+ let notificationRequest: notificationManager.NotificationRequest = {
id: 1,
content: {
contentType: notificationManager.ContentType.NOTIFICATION_CONTENT_BASIC_TEXT,
diff --git a/zh-cn/application-dev/notification/text-notification.md b/zh-cn/application-dev/notification/text-notification.md
index 8e88ecf2015a71e381cbffefce943d7fa99fe0ac..14e1d7409e8448a39d58a7597313b1e4babdc9ca 100644
--- a/zh-cn/application-dev/notification/text-notification.md
+++ b/zh-cn/application-dev/notification/text-notification.md
@@ -45,7 +45,7 @@
- 普通文本类型通知由标题、文本内容和附加信息三个字段组成,其中标题和文本内容是必填字段,大小均需要小于200字节。
```ts
- let notificationRequest = {
+ let notificationRequest: notificationManager.NotificationRequest = {
id: 1,
content: {
contentType: notificationManager.ContentType.NOTIFICATION_CONTENT_BASIC_TEXT, // 普通文本类型通知
@@ -71,7 +71,7 @@
- 长文本类型通知继承了普通文本类型的字段,同时新增了长文本内容、内容概要和通知展开时的标题,其中长文本内容不超过1024字节,其他字段小于200字节。通知默认显示与普通文本相同,展开后,标题显示为展开后标题内容,内容为长文本内容。
```ts
- let notificationRequest = {
+ let notificationRequest: notificationManager.NotificationRequest = {
id: 1,
content: {
contentType: notificationManager.ContentType.NOTIFICATION_CONTENT_LONG_TEXT, // 长文本类型通知
@@ -101,7 +101,7 @@
- 多行文本类型通知继承了普通文本类型的字段,同时新增了多行文本内容、内容概要和通知展开时的标题,其字段均小于200字节。通知默认显示与普通文本相同,展开后,标题显示为展开后标题内容,多行文本内容多行显示。
```ts
- let notificationRequest = {
+ let notificationRequest: notificationManager.NotificationRequest = {
id: 1,
content: {
contentType: notificationManager.ContentType.NOTIFICATION_CONTENT_MULTILINE, // 多行文本类型通知
@@ -131,7 +131,7 @@
```ts
let notificationPicture: PixelMap = undefined; // 需要获取图片PixelMap信息
- let notificationRequest = {
+ let notificationRequest: notificationManager.NotificationRequest = {
id: 1,
content: {
contentType: notificationManager.ContentType.NOTIFICATION_CONTENT_PICTURE,
diff --git a/zh-cn/application-dev/quick-start/app-configuration-file.md b/zh-cn/application-dev/quick-start/app-configuration-file.md
index 9dc556324cf819e9c8ff7d3865af8a8e430aa21a..e786ad4d1755aecd76378eca88827bbc0b623823 100644
--- a/zh-cn/application-dev/quick-start/app-configuration-file.md
+++ b/zh-cn/application-dev/quick-start/app-configuration-file.md
@@ -46,7 +46,7 @@ app.json5配置文件包含以下标签。
| minAPIVersion | 标识应用运行需要的SDK的API最小版本。 | 数值 | 由build-profile.json5中的compatibleSdkVersion生成。 |
| targetAPIVersion | 标识应用运行需要的API目标版本。 | 数值 | 由build-profile.json5中的compileSdkVersion生成。 |
| apiReleaseType | 标识应用运行需要的API目标版本的类型,采用字符串类型表示。取值为“CanaryN”、“BetaN”或者“Release”,其中,N代表大于零的整数。
- Canary:受限发布的版本。
- Beta:公开发布的Beta版本。
- Release:公开发布的正式版本。
该字段由DevEco Studio读取当前使用的SDK的Stage来生成。 | 字符串 | 该标签可缺省,由IDE生成并覆盖。 |
-| distributedNotificationEnabled | 标识应用是否开启分布式通知,当开启分布式通知时,同一分布式组网下的两个设备(A和B),当设备A收到一条消息时,设备B会收到一天分布式消息用于设备B的使用者去查看设备A的消息。
- true:开启。
- false:不开启。 | 布尔值 | 该标签可缺省,缺省值为false。 |
+| distributedNotificationEnabled | 标识应用是否开启分布式通知,当开启分布式通知时,同一分布式组网下的两个设备(A和B),当设备A收到一条消息时,设备B会收到一条分布式消息用于设备B的使用者去查看设备A的消息。
- true:开启。
- false:不开启。 | 布尔值 | 该标签可缺省,缺省值为false。 |
| entityType | 标识应用的类别,分别有:
- game:游戏类。
- media:影音类。
- communication:社交通信类。
- news:新闻类。
- travel:出行类。
- utility:工具类。
- shopping:购物类。
- education:教育类。
- kids:少儿类。
- business:商务类。
- photography:拍摄类。
- unspecified:不属于上述的任何一类。 | 字符串 | 该标签可以缺省,缺省为unspecified。 |
| multiProjects | 标识当前工程是否支持多个工程的联合开发。
- true:当前工程支持多个工程的联合开发。
- false:当前工程不支持多个工程的联合开发。 | 布尔值 | 可缺省,缺省值为false。 |
| tablet | 标识对tablet设备做的特殊配置,可以配置的属性字段有上文提到的:minAPIVersion、distributedNotificationEnabled。
如果使用该属性对tablet设备做了特殊配置,则应用在tablet设备中会采用此处配置的属性值,并忽略在app.json5公共区域配置的属性值。 | 对象 | 该标签可缺省,缺省时tablet设备使用app.json5公共区域配置的属性值。 |
diff --git a/zh-cn/application-dev/reference/apis/js-apis-app-ability-wantConstant.md b/zh-cn/application-dev/reference/apis/js-apis-app-ability-wantConstant.md
index 5568419351962441f45374f0e4a83f5b3842642c..acf10c857c32a1fa8428289d28c638795ef7e99b 100644
--- a/zh-cn/application-dev/reference/apis/js-apis-app-ability-wantConstant.md
+++ b/zh-cn/application-dev/reference/apis/js-apis-app-ability-wantConstant.md
@@ -12,8 +12,6 @@ wantConstant模块提供want中操作want常数和解释Flags说明的能力。
import wantConstant from '@ohos.app.ability.wantConstant';
```
-
-
## wantConstant.Params
want的Params操作的常量。
@@ -27,8 +25,6 @@ want的Params操作的常量。
| DLP_PARAMS_INDEX | ohos.dlp.params.index | 指示DLP索引参数的操作。
**系统API**:该接口为系统接口,三方应用不支持调用。 |
-
-
## wantConstant.Flags
Flags说明。用于表示处理Want的方式。
diff --git a/zh-cn/application-dev/reference/apis/js-apis-notificationManager.md b/zh-cn/application-dev/reference/apis/js-apis-notificationManager.md
index 4919feba1d401d7a4d1961c86dba7e282e106969..39d57f1d25afa78d5da0f1720de159cf0df03219 100644
--- a/zh-cn/application-dev/reference/apis/js-apis-notificationManager.md
+++ b/zh-cn/application-dev/reference/apis/js-apis-notificationManager.md
@@ -50,7 +50,7 @@ function publishCallback(err) {
}
}
//通知Request对象
-let notificationRequest = {
+let notificationRequest: notificationManager.NotificationRequest = {
id: 1,
content: {
contentType: notificationManager.ContentType.NOTIFICATION_CONTENT_BASIC_TEXT,
@@ -93,7 +93,7 @@ publish(request: NotificationRequest): Promise\
```ts
// 通知Request对象
-let notificationRequest = {
+let notificationRequest: notificationManager.NotificationRequest = {
notificationId: 1,
content: {
contentType: notificationManager.ContentType.NOTIFICATION_CONTENT_BASIC_TEXT,
@@ -156,7 +156,7 @@ function publishCallback(err) {
// 用户ID
let userId = 1;
// 通知Request对象
-let notificationRequest = {
+let notificationRequest: notificationManager.NotificationRequest = {
id: 1,
content: {
contentType: notificationManager.ContentType.NOTIFICATION_CONTENT_BASIC_TEXT,
@@ -204,7 +204,7 @@ publish(request: NotificationRequest, userId: number): Promise\
**示例:**
```ts
-let notificationRequest = {
+let notificationRequest: notificationManager.NotificationRequest = {
notificationId: 1,
content: {
contentType: notificationManager.ContentType.NOTIFICATION_CONTENT_BASIC_TEXT,
diff --git a/zh-cn/application-dev/security/accesstoken-guidelines.md b/zh-cn/application-dev/security/accesstoken-guidelines.md
index 3b8e3940d1c65198b3b1a00b133d95ea5c4fb5d4..6bbe9eb17b78c86ba3c0b257e90a553a7f67d263 100644
--- a/zh-cn/application-dev/security/accesstoken-guidelines.md
+++ b/zh-cn/application-dev/security/accesstoken-guidelines.md
@@ -148,11 +148,14 @@
atManager.requestPermissionsFromUser(context, permissions).then((data) => {
console.info(`[requestPermissions] data: ${JSON.stringify(data)}`);
let grantStatus: Array = data.authResults;
- if (grantStatus[0] === -1) {
- // 授权失败
- } else {
- // 授权成功
+ let length: number = grantStatus.length;
+ for (let i = 0; i < length; i++) {
+ if (grantStatus[i] !== 0) {
+ // 授权失败
+ return;
+ }
}
+ // 授权成功
}).catch((err) => {
console.error(`[requestPermissions] Failed to start request permissions. Error: ${JSON.stringify(err)}`);
})
@@ -178,11 +181,14 @@
atManager.requestPermissionsFromUser(context, permissions).then((data) => {
console.info(`[requestPermissions] data: ${JSON.stringify(data)}`);
let grantStatus: Array = data.authResults;
- if (grantStatus[0] === -1) {
- // 授权失败
- } else {
- // 授权成功
+ let length: number = grantStatus.length;
+ for (let i = 0; i < length; i++) {
+ if (grantStatus[i] !== 0) {
+ // 授权失败
+ return;
+ }
}
+ // 授权成功
}).catch((err) => {
console.error(`[requestPermissions] Failed to start request permissions. Error: ${JSON.stringify(err)}`);
})