void Tracepoint(HiTraceCommunicationMode mode, HiTraceTracepointType type, const HiTraceId& id, const char* fmt, ...)
|
-Outputs HiTrace call chain information based on the communication mode and information type. The information includes the timestamp and HiTraceId object information of the span.
+ | Outputs HiTraceChain call chain information based on the communication mode and information type. The information includes the timestamp and HiTraceId object information of the span.
Input arguments:
- mode: Indicates the communication mode. The options are as follows:
- HITRACE_CM_DEFAULT: default communication mode used when no communication mode is specified
- HITRACE_CM_THREAD: inter-thread communication
- HITRACE_CM_PROCESS: inter-process communication
- HITRACE_CM_DEVICE: inter-device communication
- type: Indicates the information type. The options are as follows:
- HITRACE_TP_CS: Client Send, which indicates the messages sent by the synchronous/asynchronous communication client.
- HITRACE_TP_SR: Server Receive, which indicates the messages received by the server in synchronous/asynchronous communication.
- HITRACE_TP_SS: Server Send, which indicates the response messages sent by the server in synchronous communication.
- HITRACE_TP_CR: Client Receive, which indicates the response messages received by the synchronous communication client.
- HITRACE_TP_GENERAL: Indicates the common output information.
@@ -428,7 +430,7 @@ HiTrace is implemented at layer C. It works by transferring **traceid** throug
## Call Chain Processing
-Inter-device, inter-process, and inter-thread calls are implemented through the communication mechanism. **HiTrace** requires transfer of **traceid** in the communication mechanism.
+Inter-device, inter-process, and inter-thread calls are implemented through the communication mechanism. **HiTraceChain** requires transfer of **traceid** in the communication mechanism.
Some built-in communication mechanisms \(such as ZIDL\) of OpenHarmony already support the transfer of **traceid**.
@@ -475,25 +477,25 @@ The process is as follows:
1. Develop the source code.
- Include the **hitrace** header file in the class definition header file or class implementation source file. For example:
+ Include the **hitracechain** header file in the class definition header file or class implementation source file. For example:
```
- #include "hitrace/trace.h"
+ #include "hitrace/tracechain.h"
```
Add the code to start and stop call chain tracing in the class implementation source file.
```
using namespace OHOS::HiviewDFX;
- HiTraceId traceId = HiTrace::Begin("MyServiceFlow", HITRACE_FLAG_DEFAULT);
+ auto traceId = HiTraceChain::Begin("MyServiceFlow", HITRACE_FLAG_DEFAULT);
...
- HiTrace::End(traceId);
+ HiTraceChain::End(traceId);
```
2. Configure compilation information. Specifically, add the subsystem SDK dependency to **BUILD.gn**.
```
- external_deps = [ "hiviewdfx:libhitrace" ]
+ external_deps = [ "hiviewdfx:libhitracechain" ]
```
@@ -501,24 +503,24 @@ The process is as follows:
1. Develop the source code.
- Include the **hitrace** header file in the source file.
+ Include the **hitracechain** header file in the source file.
```
- #include "hitrace/trace.h"
+ #include "hitrace/tracechain.h"
```
Add the code to start and stop call chain tracing in the class implementation source file.
```
- HiTraceIdStruct traceId = HiTraceBegin("MyServiceFlow", HITRACE_FLAG_DEFAULT);
+ HiTraceIdStruct traceId = HiTraceChainBegin("MyServiceFlow", HITRACE_FLAG_DEFAULT);
...
- HiTraceEnd(traceId);
+ HiTraceChainEnd(traceId);
```
2. Configure compilation information. Specifically, add the subsystem SDK dependency to **BUILD.gn**.
```
- external_deps = [ "hiviewdfx:libhitrace" ]
+ external_deps = [ "hiviewdfx:libhitracechain" ]
```
diff --git a/en/device-dev/subsystems/subsys-dfx-overview.md b/en/device-dev/subsystems/subsys-dfx-overview.md
index 17f65f4ffd4ef6a59f363fcf80419e6fc2cf9cbe..246375d40c696fc92a4d4a733543c0b3fd231169 100644
--- a/en/device-dev/subsystems/subsys-dfx-overview.md
+++ b/en/device-dev/subsystems/subsys-dfx-overview.md
@@ -6,7 +6,7 @@ The DFX subsystem provides the following functions:
- HiLog: implements the logging function. It is applicable to mini-system devices \(reference memory ≥ 128 KiB\), small-system devices \(reference memory ≥ 1 MiB\), and standard-system devices \(reference memory ≥ 128 MB\).
-- HiTrace: implements distributed call chain tracing. It is applicable to standard-system devices \(reference memory ≥ 128 MiB\).
+- HiTraceChain: implements distributed call chain tracing. It is applicable to standard-system devices \(reference memory ≥ 128 MiB\).
- HiCollie: implements thread suspension detection. It is applicable to standard-system devices \(reference memory ≥ 128 MiB\).
- HiSysEvent: implements system event logging. It is applicable to standard-system devices \(reference memory ≥ 128 MiB\).
- HiChecker: implements defect scanning. It is applicable to standard-system devices \(reference memory ≥ 128 MiB\).
@@ -35,3 +35,4 @@ Event logging means to collect and log events reported during system running. Th
**System event**
A system event is an indication of the system status at a given time point during system running. You can use these events to analyze the status change of the system.
+
diff --git a/zh-cn/OpenHarmony-Overview_zh.md b/zh-cn/OpenHarmony-Overview_zh.md
index d1e7d2846472ee5b603c6b576560b8ba4afe2ac9..14634f537ded05f47c83f59e063732217cf860d2 100644
--- a/zh-cn/OpenHarmony-Overview_zh.md
+++ b/zh-cn/OpenHarmony-Overview_zh.md
@@ -156,7 +156,7 @@ OpenHarmony支持如下几种系统类型:
## 快速入门
-- [设备开发快速入门](device-dev/quick-start/quickstart-ide-lite-overview.md)
+- [设备开发快速入门](device-dev/quick-start/quickstart-overview.md)
- [应用开发快速入门](application-dev/quick-start/start-overview.md)
diff --git a/zh-cn/application-dev/ability/context-userguide.md b/zh-cn/application-dev/ability/context-userguide.md
index 3d99a6fc7e033afb86457f8f4985941e7925394a..5db42e2462f957d5ae454dae2890e1d5d980dc65 100644
--- a/zh-cn/application-dev/ability/context-userguide.md
+++ b/zh-cn/application-dev/ability/context-userguide.md
@@ -10,7 +10,7 @@
只有app/Context中的方法属于FA模型对应的Context。该模式下,应用级别的Context和Ability级别的Context都是该类型的实例,如果在应用级别的Context里面调用了Ability级别的方法,会产生错误。所以开发者需要注意Context实例所代表的实际含义。
- Stage模型
- 除了app/Context之外的Context都属于Stage模型,分别有application/Context、application/ApplicationContext、application/AbilityStageContext、application/ExtensionContext、application/AbilityContext、application/FormExtensionContext等Context。这些Context的介绍及使用方式将会在[Stage模型和Context详细介绍](#stage模型和context详细介绍)中进行说明。
+ 除了app/Context之外的Context都属于Stage模型,分别有application/Context、application/ApplicationContext、application/AbilityStageContext、application/ExtensionContext、application/AbilityContext、application/FormExtensionContext等Context。这些Context的介绍及使用方式将会在[Stage模型的Context详细介绍](#stage模型的context详细介绍)中进行说明。

@@ -54,7 +54,7 @@ setDisplayOrientation(orientation: bundle.DisplayOrientation): Promise;
示例:
```javascript
import featureAbility from '@ohos.ability.featureAbility'
-import bundle from '../@ohos.bundle';
+import bundle from '@ohos.bundle';
export default {
onCreate() {
@@ -71,13 +71,13 @@ export default {
}
```
-## Stage模型和Context详细介绍
+## Stage模型的Context详细介绍
Stage模型有如下几类Context:
### application/Context
- application/Context类型的Context是基类Context,里面提供了应用的一些基础信息:resourceManager、applicationInfo、cacheDir、area等,还有应用的一些基本方法:createBundleContext等。
+ application/Context是基类Context。里面提供了应用的一些基础信息:resourceManager、applicationInfo、cacheDir、area等,还有应用的一些基本方法:createModuleContext等。
**d.ts声明**
diff --git a/zh-cn/application-dev/ability/continuationmanager.md b/zh-cn/application-dev/ability/continuationmanager.md
index 10396fd4bce36a115ce74e0bba512c9b7489a183..d82b77dbdf811b3fdc37a6a021b2416c0e0d8f9c 100644
--- a/zh-cn/application-dev/ability/continuationmanager.md
+++ b/zh-cn/application-dev/ability/continuationmanager.md
@@ -12,20 +12,20 @@ continuationManager作为流转能力的入口,主要用于拉起系统中的
## 接口说明
| 接口名 | 接口描述 |
| ---------------------------------------------------------------------------------------------- | ----------- |
-| register(callback: AsyncCallback\): void | 注册流转管理服务,并获取对应的注册token,无过滤条件(AsyncCallback)。 |
-| register(options: ContinuationExtraParams, callback: AsyncCallback\): void | 注册流转管理服务,并获取对应的注册token(AsyncCallback)。 |
-| register(options?: ContinuationExtraParams): Promise\ | 连接流转管理服务,并获取对应的注册token(Promise)。 |
+| registerContinuation(callback: AsyncCallback\): void | 注册流转管理服务,并获取对应的注册token,无过滤条件(AsyncCallback)。 |
+| registerContinuation(options: ContinuationExtraParams, callback: AsyncCallback\): void | 注册流转管理服务,并获取对应的注册token(AsyncCallback)。 |
+| registerContinuation(options?: ContinuationExtraParams): Promise\ | 连接流转管理服务,并获取对应的注册token(Promise)。 |
| on(type: "deviceConnect", token: number, callback: Callback\>): void | 监听设备连接状态(Callback)。 |
| on(type: "deviceDisconnect", token: number, callback: Callback\>): void | 监听设备断开状态(Callback)。 |
| off(type: "deviceConnect", token: number): void | 取消监听设备连接状态。 |
| off(type: "deviceDisconnect", token: number): void | 取消监听设备断开状态。 |
-| startDeviceManager(token: number, callback: AsyncCallback\): void | 拉起设备选择模块,可显示组网内可选择设备列表信息,无过滤条件(AsyncCallback)。 |
-| startDeviceManager(token: number, options: ContinuationExtraParams, callback: AsyncCallback\): void | 拉起设备选择模块,可显示组网内可选择设备列表信息(AsyncCallback)。 |
-| startDeviceManager(token: number, options?: ContinuationExtraParams): Promise\ | 拉起设备选择模块,可显示组网内可选择设备列表信息(Promise)。 |
-| updateConnectStatus(token: number, deviceId: string, status: DeviceConnectState, callback: AsyncCallback\): void | 通知设备选择模块,更新当前的流转状态(AsyncCallback)。 |
-| updateConnectStatus(token: number, deviceId: string, status: DeviceConnectState): Promise\ | 通知设备选择模块,更新当前的流转状态(Promise)。 |
-| unregister(token: number, callback: AsyncCallback\): void | 取消注册流转管理服务,传入注册时获取的token进行取消注册(AsyncCallback)。 |
-| unregister(token: number): Promise\ | 取消注册流转管理服务,传入注册时获取的token进行取消注册(Promise)。 |
+| startContinuationDeviceManager(token: number, callback: AsyncCallback\): void | 拉起设备选择模块,可显示组网内可选择设备列表信息,无过滤条件(AsyncCallback)。 |
+| startContinuationDeviceManager(token: number, options: ContinuationExtraParams, callback: AsyncCallback\): void | 拉起设备选择模块,可显示组网内可选择设备列表信息(AsyncCallback)。 |
+| startContinuationDeviceManager(token: number, options?: ContinuationExtraParams): Promise\ | 拉起设备选择模块,可显示组网内可选择设备列表信息(Promise)。 |
+| updateContinuationState(token: number, deviceId: string, status: DeviceConnectState, callback: AsyncCallback\): void | 通知设备选择模块,更新当前的流转状态(AsyncCallback)。 |
+| updateContinuationState(token: number, deviceId: string, status: DeviceConnectState): Promise\ | 通知设备选择模块,更新当前的流转状态(Promise)。 |
+| unregisterContinuation(token: number, callback: AsyncCallback\): void | 取消注册流转管理服务,传入注册时获取的token进行取消注册(AsyncCallback)。 |
+| unregisterContinuation(token: number): Promise\ | 取消注册流转管理服务,传入注册时获取的token进行取消注册(Promise)。 |
## 开发步骤
1. 导入continuationManager模块。
@@ -138,13 +138,16 @@ continuationManager作为流转能力的入口,主要用于拉起系统中的
```ts
let token: number = -1; // 用于保存注册成功并返回的token,后续使用其完成监听设备连接/断开状态、拉起设备选择模块以及更新流转状态的动作
-
- continuationManager.register().then((data) => {
- console.info('register finished, ' + JSON.stringify(data));
- token = data; // 获取到对应的注册token,并赋值给token变量
- }).catch((err) => {
- console.error('register failed, cause: ' + JSON.stringify(err));
- });
+ try {
+ continuationManager.registerContinuation().then((data) => {
+ console.info('registerContinuation finished, ' + JSON.stringify(data));
+ token = data; // 获取到对应的注册token,并赋值给token变量
+ }).catch((err) => {
+ console.error('registerContinuation failed, cause: ' + JSON.stringify(err));
+ });
+ } catch (err) {
+ console.error('registerContinuation failed, cause: ' + JSON.stringify(err));
+ }
```
4. 监听设备状态。
@@ -154,28 +157,32 @@ continuationManager作为流转能力的入口,主要用于拉起系统中的
```ts
let remoteDeviceId: string = ""; // 用于保存用户选择的远端设备信息,后续使用其完成跨端迁移或多端协同操作
- // 参数token为注册token
- continuationManager.on("deviceConnect", token, (continuationResults) => {
- console.info('registerDeviceConnectCallback len: ' + continuationResults.length);
- if (continuationResults.length <= 0) {
- console.info('no selected device');
- return;
- }
- remoteDeviceId = continuationResults[0].id; // 将选择的第一个远端设备deviceId赋值给remoteDeviceId变量
-
- // 将remoteDeviceId参数传给want
- let want = {
- deviceId: remoteDeviceId,
- bundleName: 'ohos.samples.continuationmanager',
- abilityName: 'MainAbility'
- };
- // 发起多端协同操作,需申请ohos.permission.DISTRIBUTED_DATASYNC权限
- globalThis.abilityContext.startAbility(want).then((data) => {
- console.info('StartRemoteAbility finished, ' + JSON.stringify(data));
- }).catch((err) => {
- console.error('StartRemoteAbility failed, cause: ' + JSON.stringify(err));
+ try {
+ // 参数token为注册token
+ continuationManager.on("deviceConnect", token, (continuationResults) => {
+ console.info('registerDeviceConnectCallback len: ' + continuationResults.length);
+ if (continuationResults.length <= 0) {
+ console.info('no selected device');
+ return;
+ }
+ remoteDeviceId = continuationResults[0].id; // 将选择的第一个远端设备deviceId赋值给remoteDeviceId变量
+
+ // 将remoteDeviceId参数传给want
+ let want = {
+ deviceId: remoteDeviceId,
+ bundleName: 'ohos.samples.continuationmanager',
+ abilityName: 'MainAbility'
+ };
+ // 发起多端协同操作,需申请ohos.permission.DISTRIBUTED_DATASYNC权限
+ globalThis.abilityContext.startAbility(want).then((data) => {
+ console.info('StartRemoteAbility finished, ' + JSON.stringify(data));
+ }).catch((err) => {
+ console.error('StartRemoteAbility failed, cause: ' + JSON.stringify(err));
+ });
});
- });
+ } catch (err) {
+ console.error('on failed, cause: ' + JSON.stringify(err));
+ }
```
上述多端协同操作为Stage平台的跨设备拉起,FA平台详情见[PageAbility开发指导](https://gitee.com/openharmony/docs/blob/master/zh-cn/application-dev/ability/fa-pageability.md)。
@@ -187,35 +194,43 @@ continuationManager作为流转能力的入口,主要用于拉起系统中的
let deviceConnectStatus: continuationManager.DeviceConnectState = continuationManager.DeviceConnectState.CONNECTED;
// 参数token为注册token,参数remoteDeviceId为获取到的remoteDeviceId
- continuationManager.updateConnectStatus(token, remoteDeviceId, deviceConnectStatus).then((data) => {
- console.info('updateConnectStatus finished, ' + JSON.stringify(data));
- }).catch((err) => {
- console.error('updateConnectStatus failed, cause: ' + JSON.stringify(err));
- });
+ try {
+ continuationManager.updateContinuationState(token, remoteDeviceId, deviceConnectStatus).then((data) => {
+ console.info('updateContinuationState finished, ' + JSON.stringify(data));
+ }).catch((err) => {
+ console.error('updateContinuationState failed, cause: ' + JSON.stringify(err));
+ });
+ } catch (err) {
+ console.error('updateContinuationState failed, cause: ' + JSON.stringify(err));
+ }
```
监听设备断开状态,方便用户终止跨端迁移或多端协同操作,代码示例如下:
```ts
- // 参数token为注册token
- continuationManager.on("deviceDisconnect", token, (deviceIds) => {
- console.info('onDeviceDisconnect len: ' + deviceIds.length);
- if (deviceIds.length <= 0) {
- console.info('no unselected device');
- return;
- }
+ try {
+ // 参数token为注册token
+ continuationManager.on("deviceDisconnect", token, (deviceIds) => {
+ console.info('onDeviceDisconnect len: ' + deviceIds.length);
+ if (deviceIds.length <= 0) {
+ console.info('no unselected device');
+ return;
+ }
- // 更新设备流转状态
- let unselectedDeviceId: string = deviceIds[0]; // 将取消选择的第一个远端设备deviceId赋值给unselectedDeviceId变量
- let deviceConnectStatus: continuationManager.DeviceConnectState = continuationManager.DeviceConnectState.DISCONNECTING; // 设备断开状态
+ // 更新设备流转状态
+ let unselectedDeviceId: string = deviceIds[0]; // 将取消选择的第一个远端设备deviceId赋值给unselectedDeviceId变量
+ let deviceConnectStatus: continuationManager.DeviceConnectState = continuationManager.DeviceConnectState.DISCONNECTING; // 设备断开状态
- // 参数token为注册token,参数unselectedDeviceId为获取到的unselectedDeviceId
- continuationManager.updateConnectStatus(token, unselectedDeviceId, deviceConnectStatus).then((data) => {
- console.info('updateConnectStatus finished, ' + JSON.stringify(data));
- }).catch((err) => {
- console.error('updateConnectStatus failed, cause: ' + JSON.stringify(err));
+ // 参数token为注册token,参数unselectedDeviceId为获取到的unselectedDeviceId
+ continuationManager.updateContinuationState(token, unselectedDeviceId, deviceConnectStatus).then((data) => {
+ console.info('updateContinuationState finished, ' + JSON.stringify(data));
+ }).catch((err) => {
+ console.error('updateContinuationState failed, cause: ' + JSON.stringify(err));
+ });
});
- });
+ } catch (err) {
+ console.error('updateContinuationState failed, cause: ' + JSON.stringify(err));
+ }
```
5. 拉起设备选择模块,可显示组网内可选择设备列表信息,供用户选择。
@@ -229,12 +244,16 @@ continuationManager作为流转能力的入口,主要用于拉起系统中的
continuationMode: continuationManager.ContinuationMode.COLLABORATION_SINGLE // 设备选择模块单选模式
};
- // 参数token为注册token
- continuationManager.startDeviceManager(token, continuationExtraParams).then((data) => {
- console.info('startDeviceManager finished, ' + JSON.stringify(data));
- }).catch((err) => {
- console.error('startDeviceManager failed, cause: ' + JSON.stringify(err));
- });
+ try {
+ // 参数token为注册token
+ continuationManager.startContinuationDeviceManager(token, continuationExtraParams).then((data) => {
+ console.info('startContinuationDeviceManager finished, ' + JSON.stringify(data));
+ }).catch((err) => {
+ console.error('startContinuationDeviceManager failed, cause: ' + JSON.stringify(err));
+ });
+ } catch (err) {
+ console.error('startContinuationDeviceManager failed, cause: ' + JSON.stringify(err));
+ }
```
6. 当用户不打算再进行跨端迁移或多端协同操作时,可以传入注册时获取的token进行取消注册。
@@ -242,10 +261,14 @@ continuationManager作为流转能力的入口,主要用于拉起系统中的
取消注册流转管理服务的代码示例如下:
```ts
- // 参数token为注册token
- continuationManager.unregister(token).then((data) => {
- console.info('unregister finished, ' + JSON.stringify(data));
- }).catch((err) => {
- console.error('unregister failed, cause: ' + JSON.stringify(err));
- });
+ try {
+ // 参数token为注册token
+ continuationManager.unregisterContinuation(token).then((data) => {
+ console.info('unregisterContinuation finished, ' + JSON.stringify(data));
+ }).catch((err) => {
+ console.error('unregisterContinuation failed, cause: ' + JSON.stringify(err));
+ });
+ } catch (err) {
+ console.error('unregisterContinuation failed, cause: ' + JSON.stringify(err));
+ }
```
\ No newline at end of file
diff --git a/zh-cn/application-dev/ability/figures/contextIntroduction.png b/zh-cn/application-dev/ability/figures/contextIntroduction.png
index 13ead57e71d75174e44b30799696252fdf198ab7..df5f7b1936617af892d7d6729deee2239232c1cf 100644
Binary files a/zh-cn/application-dev/ability/figures/contextIntroduction.png and b/zh-cn/application-dev/ability/figures/contextIntroduction.png differ
diff --git a/zh-cn/application-dev/ability/stage-ability.md b/zh-cn/application-dev/ability/stage-ability.md
index 2f3713ff765fd16f6d8745a34d305fa19322fecf..b10f8d6934228cf668dca0390e47e5ef6c60ce8a 100644
--- a/zh-cn/application-dev/ability/stage-ability.md
+++ b/zh-cn/application-dev/ability/stage-ability.md
@@ -12,9 +12,9 @@ Ability支持单实例、多实例和指定实例3种启动模式,在module.js
| 启动模式 | 描述 |说明 |
| ----------- | ------- |---------------- |
-| standard | 多实例 | 每次startAbility都会启动一个新的实例 |
-| singleton | 单实例 | 系统中只存在唯一一个实例,startAbility时,如果已存在,则复用系统中的唯一一个实例 |
-| specified | 指定实例 | 运行时由Ability内部业务决定是否创建多实例 |
+| standard | 标准模式 | 每次startAbility都会启动一个新的实例。 |
+| singleton | 单实例模式 | 系统中只存在唯一一个实例,startAbility时,如果已存在,则复用系统中的唯一一个实例。 |
+| specified | 指定实例 | 运行时由Ability内部业务决定是否创建多实例。 |
缺省情况下是singleton模式,module.json5示例如下:
```json
diff --git a/zh-cn/application-dev/ability/stage-brief.md b/zh-cn/application-dev/ability/stage-brief.md
index c4b1a09320f88b41ebe5f541efada4aaa9ced7cb..858dc74a03b441bf7a4f48aef1cd55c8648c2f85 100644
--- a/zh-cn/application-dev/ability/stage-brief.md
+++ b/zh-cn/application-dev/ability/stage-brief.md
@@ -60,7 +60,7 @@
+ **Standard**:每次startAbility调用,都会在应用进程中创建一个该类型的实例,如下图Ability2的两个实例;
-+ **Specified**:允许开发者在系统创建AbilityRecord之前,为该实例创建一个key,后续每次创建该类型的Ability实例都会询问应用使用哪个key对应的Ability实例,来响应startAbility请求,如下图Ability3。
++ **Specified**:允许开发者在系统创建Ability实例之前,为该实例创建一个key,后续每次创建该类型的Ability实例都会询问应用使用哪个key对应的Ability实例,来响应startAbility请求,如下图Ability3。
每个Ability实例都对应了一个Launcher Recent中看到的Mission(任务)。
diff --git a/zh-cn/application-dev/quick-start/stage-structure.md b/zh-cn/application-dev/quick-start/stage-structure.md
index 2614a8cea2e065b64afd51e4535ff7ff007302dd..f11487eb8f7547cf9bb9b7e8a14c5e38bdb96788 100755
--- a/zh-cn/application-dev/quick-start/stage-structure.md
+++ b/zh-cn/application-dev/quick-start/stage-structure.md
@@ -68,6 +68,7 @@ app.json示例:
| keepAlive | 标识应用是否始终保持运行状态,仅支持系统应用配置,三方应用配置不生效。标签值为布尔类型,如果为true,应用将始终保持为运行状态,并且在系统启动的时候会被系统启动起来,应用进程退出后,系统也会重新启动该应用进程。 | 布尔值 | 可缺省,缺省值为false。 |
| userDataClearable | 标识是否允许应用清除用户数据,仅支持系统应用配置,三方应用配置不生效,该字段从API8开始支持。 | 布尔值 | 可缺省,缺省值为true。 |
| accessible | 标识应用的安装目录是否是可访问的,仅支持系统应用配置,三方应用配置不生效。配置为true表示安装目录可以被三方应用访问,false表示不能被三方应用访问。 | 布尔值 | 可缺省,缺省值为false。 |
+| multiProjects | 标识当前工程是否支持多工程。 | 布尔值 | 可缺省,缺省值为false。 |
| 设备类型 | 该标签可以配置多个,表示具体设备上的特殊配置信息,具体的设备类型有:"tablet"、"tv"、"wearable"、"car",可能包含的字段有:minAPIVersion、distributedNotificationEnabled、keepAlive、removable。 | 对象 | 该标签可缺省,缺省值使用app下面相关的字段。 |
### module对象内部结构
diff --git a/zh-cn/application-dev/reference/apis/js-apis-abilityAccessCtrl.md b/zh-cn/application-dev/reference/apis/js-apis-abilityAccessCtrl.md
index 49c4795ff06ebe38d75363f6249ebdc0e4d4a92d..31fec85964459757d137791e1a241ee668b3f966 100644
--- a/zh-cn/application-dev/reference/apis/js-apis-abilityAccessCtrl.md
+++ b/zh-cn/application-dev/reference/apis/js-apis-abilityAccessCtrl.md
@@ -36,9 +36,9 @@ var AtManager = abilityAccessCtrl.createAtManager();
管理访问控制模块的实例。
-### verifyAccessToken
+### checkAccessToken9+
-verifyAccessToken(tokenID: number, permissionName: string): Promise<GrantStatus>
+checkAccessToken(tokenID: number, permissionName: string): Promise<GrantStatus>
校验应用是否授予权限,使用Promise方式异步返回结果。
@@ -55,17 +55,24 @@ verifyAccessToken(tokenID: number, permissionName: string): Promise<GrantStat
| 类型 | 说明 |
| :------------ | :---------------------------------- |
-| Promise<GrantStatus> | Promise实例,用于获取异步返回的授权状态结果。 |
+| Promise<GrantStatus> | Promise对象。返回授权状态结果。 |
**示例:**
```js
-var AtManager = abilityAccessCtrl.createAtManager();
-let tokenID = 0;
-let promise = AtManager.verifyAccessToken(tokenID, "ohos.permission.GRANT_SENSITIVE_PERMISSIONS");
-promise.then(data => {
- console.log(`promise: data->${JSON.stringify(data)}`);
-});
+import privacyManager from '@ohos.abilityAccessCtrl';
+
+let AtManager = abilityAccessCtrl.createAtManager();
+let tokenID = 0; // 可以通过getApplicationInfo获取accessTokenId
+try {
+ AtManager.checkAccessToken(tokenID, "ohos.permission.GRANT_SENSITIVE_PERMISSIONS").then((data) => {
+ console.log(`checkAccessToken success, data->${JSON.stringify(data)}`);
+ }).catch((err) => {
+ console.log(`checkAccessToken fail, err->${JSON.stringify(err)}`);
+ });
+} catch(err) {
+ console.log(`catch err->${JSON.stringify(err)}`);
+}
```
### verifyAccessTokenSync9+
@@ -100,7 +107,7 @@ console.log(`data->${JSON.stringify(data)}`);
### grantUserGrantedPermission
-grantUserGrantedPermission(tokenID: number, permissionName: string, permissionFlag: number): Promise<number>
+grantUserGrantedPermission(tokenID: number, permissionName: string, permissionFlag: number): Promise<void>
授予应用user grant权限,使用Promise方式异步返回结果。
@@ -114,7 +121,7 @@ grantUserGrantedPermission(tokenID: number, permissionName: string, permissionFl
| 参数名 | 类型 | 必填 | 说明 |
| --------- | ------------------- | ---- | ------------------------------------------------------------ |
-| tokenID | number | 是 | 目标应用的身份标识。 |
+| tokenID | number | 是 | 目标应用的身份标识。可通过应用的[ApplicationInfo](js-apis-bundle-ApplicationInfo.md)获得 |
| permissionName | string | 是 | 被授予的权限名称。 |
| permissionFlag | number | 是 | 授权选项,1表示下次仍需弹窗,2表示允许、禁止后不再提醒,3表示系统授权不允许更改。 |
@@ -122,23 +129,30 @@ grantUserGrantedPermission(tokenID: number, permissionName: string, permissionFl
| 类型 | 说明 |
| :------------ | :---------------------------------- |
-| Promise<number> | Promise实例,用于获取异步返回的授权操作结果。 |
+| Promise<void> | Promise对象。无返回结果的Promise对象。 |
**示例:**
```js
-var AtManager = abilityAccessCtrl.createAtManager();
-let tokenID = 0;
+import privacyManager from '@ohos.abilityAccessCtrl';
+
+let AtManager = abilityAccessCtrl.createAtManager();
+let tokenID = 0; // 可以通过getApplicationInfo获取accessTokenId
let permissionFlag = 1;
-let promise = AtManager.grantUserGrantedPermission(tokenID, "ohos.permission.GRANT_SENSITIVE_PERMISSIONS", permissionFlag);
-promise.then(data => {
- console.log(`promise: data->${JSON.stringify(data)}`);
-});
+try {
+ AtManager.grantUserGrantedPermission(tokenID, "ohos.permission.GRANT_SENSITIVE_PERMISSIONS", permissionFlag).then(() => {
+ console.log('grantUserGrantedPermission success');
+ }).catch((err) => {
+ console.log(`grantUserGrantedPermission fail, err->${JSON.stringify(err)}`);
+ });
+} catch(err) {
+ console.log(`catch err->${JSON.stringify(err)}`);
+}
```
### grantUserGrantedPermission
-grantUserGrantedPermission(tokenID: number, permissionName: string, permissionFlag: number, callback: AsyncCallback<number>): void
+grantUserGrantedPermission(tokenID: number, permissionName: string, permissionFlag: number, callback: AsyncCallback<void>): void
授予应用user grant权限,使用callback回调异步返回结果。
@@ -152,29 +166,35 @@ grantUserGrantedPermission(tokenID: number, permissionName: string, permissionFl
| 参数名 | 类型 | 必填 | 说明 |
| --------- | ------------------- | ---- | ------------------------------------------------------------ |
-| tokenID | number | 是 | 目标应用的身份标识。 |
+| tokenID | number | 是 | 目标应用的身份标识。可通过应用的[ApplicationInfo](js-apis-bundle-ApplicationInfo.md)获得 |
| permissionName | string | 是 | 被授予的权限名称。 |
| permissionFlag | number | 是 | 授权选项,1表示下次仍需弹窗,2表示允许、禁止后不再提醒,3表示系统授权不允许更改。 |
-| callback | AsyncCallback<number> | 是 | 检查授予应用user grant权限的操作结果同步的回调。 |
+| callback | AsyncCallback<void> | 是 | 检查授予应用user grant权限的操作结果同步的回调。 |
**示例:**
```js
+import privacyManager from '@ohos.abilityAccessCtrl';
+
var AtManager = abilityAccessCtrl.createAtManager();
-let tokenID = 0;
+let tokenID = 0; // 可以通过getApplicationInfo获取accessTokenId
let permissionFlag = 1;
-AtManager.grantUserGrantedPermission(tokenID, "ohos.permission.GRANT_SENSITIVE_PERMISSIONS", permissionFlag, (err, data) => {
- if (err) {
- console.log(`callback: err->${JSON.stringify(err)}`);
- } else {
- console.log(`callback: data->${JSON.stringify(data)}`);
- }
-});
+try {
+ AtManager.grantUserGrantedPermission(tokenID, "ohos.permission.GRANT_SENSITIVE_PERMISSIONS", permissionFlag, (data, err) => {
+ if (err) {
+ console.log(`grantUserGrantedPermission fail, err->${JSON.stringify(err)}`);
+ } else {
+ console.log('grantUserGrantedPermission success');
+ }
+ });
+} catch(err) {
+ console.log(`catch err->${JSON.stringify(err)}`);
+}
```
### revokeUserGrantedPermission
-revokeUserGrantedPermission(tokenID: number, permissionName: string, permissionFlag: number): Promise<number>
+revokeUserGrantedPermission(tokenID: number, permissionName: string, permissionFlag: number): Promise<void>
撤销应用user grant权限,使用Promise方式异步返回结果。
@@ -188,7 +208,7 @@ revokeUserGrantedPermission(tokenID: number, permissionName: string, permissionF
| 参数名 | 类型 | 必填 | 说明 |
| --------- | ------------------- | ---- | ------------------------------------------------------------ |
-| tokenID | number | 是 | 目标应用的身份标识。 |
+| tokenID | number | 是 | 目标应用的身份标识。可通过应用的[ApplicationInfo](js-apis-bundle-ApplicationInfo.md)获得 |
| permissionName | string | 是 | 被撤销的权限名称。 |
| permissionFlag | number | 是 | 授权选项,1表示下次仍需弹窗,2表示允许、禁止后不再提醒,3表示系统授权不允许更改。 |
@@ -196,23 +216,30 @@ revokeUserGrantedPermission(tokenID: number, permissionName: string, permissionF
| 类型 | 说明 |
| :------------ | :---------------------------------- |
-| Promise<number> | Promise实例,用于获取异步返回的授权操作结果。 |
+| Promise<void> | Promise对象。无返回结果的Promise对象。 |
**示例:**
```js
-var AtManager = abilityAccessCtrl.createAtManager();
-let tokenID = 0;
+import privacyManager from '@ohos.abilityAccessCtrl';
+
+let AtManager = abilityAccessCtrl.createAtManager();
+let tokenID = 0; // 可以通过getApplicationInfo获取accessTokenId
let permissionFlag = 1;
-let promise = AtManager.revokeUserGrantedPermission(tokenID, "ohos.permission.GRANT_SENSITIVE_PERMISSIONS", permissionFlag);
-promise.then(data => {
- console.log(`promise: data->${JSON.stringify(data)}`);
-});
+try {
+ AtManager.revokeUserGrantedPermission(tokenID, "ohos.permission.GRANT_SENSITIVE_PERMISSIONS", permissionFlag).then(() => {
+ console.log('revokeUserGrantedPermission success');
+ }).catch((err) => {
+ console.log(`revokeUserGrantedPermission fail, err->${JSON.stringify(err)}`);
+ });
+} catch(err) {
+ console.log(`catch err->${JSON.stringify(err)}`);
+}
```
### revokeUserGrantedPermission
-revokeUserGrantedPermission(tokenID: number, permissionName: string, permissionFlag: number, callback: AsyncCallback<number>): void
+revokeUserGrantedPermission(tokenID: number, permissionName: string, permissionFlag: number, callback: AsyncCallback<void>): void
撤销应用user grant权限,使用callback回调异步返回结果。
@@ -226,24 +253,30 @@ revokeUserGrantedPermission(tokenID: number, permissionName: string, permissionF
| 参数名 | 类型 | 必填 | 说明 |
| --------- | ------------------- | ---- | ------------------------------------------------------------ |
-| tokenID | number | 是 | 目标应用的身份标识。 |
+| tokenID | number | 是 | 目标应用的身份标识。可通过应用的[ApplicationInfo](js-apis-bundle-ApplicationInfo.md)获得 |
| permissionName | string | 是 | 被撤销的权限名称。 |
| permissionFlag | number | 是 | 授权选项,1表示下次仍需弹窗,2表示允许、禁止后不再提醒,3表示系统授权不允许更改。 |
-| callback | AsyncCallback<number> | 是 | 检查撤销应用user grant权限的操作结果同步的回调。 |
+| callback | AsyncCallback<void> | 是 | 检查撤销应用user grant权限的操作结果同步的回调。 |
**示例:**
```js
+import privacyManager from '@ohos.abilityAccessCtrl';
+
var AtManager = abilityAccessCtrl.createAtManager();
-let tokenID = 0;
+let tokenID = 0; // 可以通过getApplicationInfo获取accessTokenId
let permissionFlag = 1;
-AtManager.revokeUserGrantedPermission(tokenID, "ohos.permission.GRANT_SENSITIVE_PERMISSIONS", permissionFlag, (err, data) => {
- if (err) {
- console.log(`callback: err->${JSON.stringify(err)}`);
- } else {
- console.log(`callback: data->${JSON.stringify(data)}`);
- }
-});
+try {
+ AtManager.revokeUserGrantedPermission(tokenID, "ohos.permission.GRANT_SENSITIVE_PERMISSIONS", permissionFlag, (data, err) => {
+ if (err) {
+ console.log(`revokeUserGrantedPermission fail, err->${JSON.stringify(err)}`);
+ } else {
+ console.log('revokeUserGrantedPermission success');
+ }
+ });
+} catch(err) {
+ console.log(`catch err->${JSON.stringify(err)}`);
+}
```
### getPermissionFlags
@@ -262,24 +295,32 @@ getPermissionFlags(tokenID: number, permissionName: string): Promise<number&g
| 参数名 | 类型 | 必填 | 说明 |
| --------- | ------------------- | ---- | ------------------------------------------------------------ |
-| tokenID | number | 是 | 目标应用的身份标识。 |
+| tokenID | number | 是 | 目标应用的身份标识。可通过应用的[ApplicationInfo](js-apis-bundle-ApplicationInfo.md)获得 |
| permissionName | string | 是 | 查询的权限名称。 |
**返回值:**
| 类型 | 说明 |
| :------------ | :---------------------------------- |
-| Promise<number> | Promise实例,用于获取异步返回的查询结果。 |
+| Promise<number> | Promise对象。返回查询结果。 |
**示例:**
```js
-var AtManager = abilityAccessCtrl.createAtManager();
-let tokenID = 0;
-let promise = AtManager.getPermissionFlags(tokenID, "ohos.permission.GRANT_SENSITIVE_PERMISSIONS");
-promise.then(data => {
- console.log(`promise: data->${JSON.stringify(data)}`);
-});
+import privacyManager from '@ohos.abilityAccessCtrl';
+
+let AtManager = abilityAccessCtrl.createAtManager();
+let tokenID = 0; // 可以通过getApplicationInfo获取accessTokenId
+let permissionFlag = 1;
+try {
+ AtManager.getPermissionFlags(tokenID, "ohos.permission.GRANT_SENSITIVE_PERMISSIONS").then((data) => {
+ console.log(`getPermissionFlags success, data->${JSON.stringify(data)}`);
+ }).catch((err) = > {
+ console.log(`getPermissionFlags fail, err->${JSON.stringify(err)}`);
+ });
+} catch(err) {
+ console.log(`catch err->${JSON.stringify(err)}`);
+}
```
### getVersion9+
@@ -296,7 +337,7 @@ getVersion(): Promise<number>
| 类型 | 说明 |
| :------------ | :---------------------------------- |
-| Promise<number> | Promise实例,用于获取异步返回的版本号。 |
+| Promise<number> | Promise对象。返回查询到的版本号。 |
**示例:**
@@ -334,18 +375,15 @@ on(type: 'permissionStateChange', tokenIDList: Array<number>, permissionNa
```js
import abilityAccessCtrl from '@ohos.abilityAccessCtrl';
-function OnPermissionStateChanged(data){
- console.debug("receive permission state change, data:" + JSON.stringify(data));
-}
let atManager = abilityAccessCtrl.createAtManager();
-let type: 'permissionStateChange' = 'permissionStateChange';
let tokenIDList: Array = [];
let permissionNameList: Array = [];
-try{
- atManager.on(type, tokenIDList, permissionNameList, OnPermissionStateChanged);
-}
-catch(err){
- console.error("on err:" + JSON.stringify(err));
+try {
+ atManager.on('permissionStateChange', tokenIDList, permissionNameList, (data) => {
+ console.debug("receive permission state change, data:" + JSON.stringify(data));
+ });
+} catch(err) {
+ console.log(`catch err->${JSON.stringify(err)}`);
}
```
@@ -376,17 +414,51 @@ off(type: 'permissionStateChange', tokenIDList: Array<number>, permissionN
import abilityAccessCtrl from '@ohos.abilityAccessCtrl';
let atManager = abilityAccessCtrl.createAtManager();
-let type: 'permissionStateChange' = 'permissionStateChange';
let tokenIDList: Array = [];
let permissionNameList: Array = [];
-try{
- atManager.off(type, tokenIDList, permissionNameList);
-}
-catch(err){
- console.error("off err:" + JSON.stringify(err));
+try {
+ atManager.off('permissionStateChange', tokenIDList, permissionNameList);
+} catch(err) {
+ console.log(`catch err->${JSON.stringify(err)}`);
}
```
+### verifyAccessToken(deprecated)
+
+verifyAccessToken(tokenID: number, permissionName: string): Promise<GrantStatus>
+
+校验应用是否授予权限,使用Promise方式异步返回结果。
+
+> **说明:** 从API version 9开始不再维护,建议使用[checkAccessToken](#checkaccesstoken9)替代。
+
+**系统能力:** SystemCapability.Security.AccessToken
+
+**参数:**
+
+| 参数名 | 类型 | 必填 | 说明 |
+| -------- | ------------------- | ---- | ------------------------------------------ |
+| tokenID | number | 是 | 要校验的目标应用的身份标识。可通过应用的[ApplicationInfo](js-apis-bundle-ApplicationInfo.md)获得 |
+| permissionName | string | 是 | 需要校验的权限名称。 |
+
+**返回值:**
+
+| 类型 | 说明 |
+| :------------ | :---------------------------------- |
+| Promise<GrantStatus> | Promise对象。返回授权状态结果。 |
+
+**示例:**
+
+```js
+import privacyManager from '@ohos.abilityAccessCtrl';
+
+var AtManager = abilityAccessCtrl.createAtManager();
+let tokenID = 0; // 可以通过getApplicationInfo获取accessTokenId
+let promise = AtManager.verifyAccessToken(tokenID, "ohos.permission.GRANT_SENSITIVE_PERMISSIONS");
+promise.then(data => {
+ console.log(`promise: data->${JSON.stringify(data)}`);
+});
+```
+
### GrantStatus
表示授权状态的枚举。
diff --git a/zh-cn/application-dev/reference/apis/js-apis-application-MissionSnapshot.md b/zh-cn/application-dev/reference/apis/js-apis-application-MissionSnapshot.md
index 8ce41e3e803fd73d9b122f760d6b0f2a21bf716d..e9447a2709bbd3d4933746be58d28380daab80b9 100755
--- a/zh-cn/application-dev/reference/apis/js-apis-application-MissionSnapshot.md
+++ b/zh-cn/application-dev/reference/apis/js-apis-application-MissionSnapshot.md
@@ -16,17 +16,17 @@ import ElementName from '@ohos.bundle';
import image from '@ohos.multimedia.image';
import missionManager from '@ohos.application.missionManager';
- missionManager.getMissionInfos("", 10, (error, missions) => {
- console.log("getMissionInfos is called, error.code = " + error.code);
- console.log("size = " + missions.length);
- console.log("missions = " + JSON.stringify(missions));
- var id = missions[0].missionId;
-
- missionManager.getMissionSnapShot("", id, (error, snapshot) => {
- console.log("getMissionSnapShot is called, error.code = " + error.code);
- console.log("bundleName = " + snapshot.ability.bundleName);
- })
+missionManager.getMissionInfos("", 10, (error, missions) => {
+ console.log("getMissionInfos is called, error.code = " + error.code);
+ console.log("size = " + missions.length);
+ console.log("missions = " + JSON.stringify(missions));
+ var id = missions[0].missionId;
+
+ missionManager.getMissionSnapShot("", id, (error, snapshot) => {
+ console.log("getMissionSnapShot is called, error.code = " + error.code);
+ console.log("bundleName = " + snapshot.ability.bundleName);
})
+})
```
## MissionSnapshot
diff --git a/zh-cn/application-dev/reference/apis/js-apis-application-abilitystage.md b/zh-cn/application-dev/reference/apis/js-apis-application-abilitystage.md
index 6e9cbe21f860a5189c93308e6818c9b43127450c..c4df381040d58b064fecda53f25b1ab2ada6c69d 100644
--- a/zh-cn/application-dev/reference/apis/js-apis-application-abilitystage.md
+++ b/zh-cn/application-dev/reference/apis/js-apis-application-abilitystage.md
@@ -52,7 +52,7 @@ onAcceptWant(want: Want): string;
| 类型 | 说明 |
| -------- | -------- |
- | string | 用户返回一个ability标识,如果之前启动过次标识的ability,不创建新的实例并拉回栈顶,否则创建新的实例并启动。 |
+ | string | 用户返回一个ability标识,如果之前启动过标识的ability,不创建新的实例并拉回栈顶,否则创建新的实例并启动。 |
**示例:**
diff --git a/zh-cn/application-dev/reference/apis/js-apis-audio.md b/zh-cn/application-dev/reference/apis/js-apis-audio.md
index e897e24775313397b93afe4e78c932d866990c5a..79113c8c43330044a1074a869c63ca1a36c08238 100644
--- a/zh-cn/application-dev/reference/apis/js-apis-audio.md
+++ b/zh-cn/application-dev/reference/apis/js-apis-audio.md
@@ -7,6 +7,7 @@
- [AudioManager](#audiomanager):音频管理。
- [AudioRenderer](#audiorenderer8):音频渲染,用于播放PCM(Pulse Code Modulation)音频数据。
- [AudioCapturer](#audiocapturer8):音频采集,用于录制PCM音频数据。
+- [TonePlayer](#toneplayer9):用于管理和播放DTMF(Dual Tone Multi Frequency,双音多频)音调,如拨号音、通话回铃音等。
> **说明:**
> 本模块首批接口从API version 7开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。
@@ -254,6 +255,78 @@ audio.createAudioCapturer(audioCapturerOptions).then((data) => {
});
```
+## audio.createTonePlayer9+
+
+createTonePlayer(options: AudioRendererInfo, callback: AsyncCallback<TonePlayer>): void
+
+创建DTMF播放器。使用callback方式异步返回结果。
+
+**系统能力:** SystemCapability.Multimedia.Audio.Tone
+
+**参数:**
+
+| 参数名 | 类型 | 必填 | 说明 |
+| -------- | ----------------------------------------------- | ---- | -------------- |
+| options | [AudioRendererInfo](#audiorendererinfo8) | 是 | 配置音频渲染器信息。|
+| callback | AsyncCallback<[TonePlayer](#toneplayer9)> | 是 | 回调函数,回调返回音频渲染器对象。|
+
+**示例:**
+
+```js
+import audio from '@ohos.multimedia.audio';
+
+var audioRendererInfo = {
+ "contentType": audio.ContentType.CONTENT_TYPE_MUSIC,
+ "streamUsage": audio.StreamUsage.STREAM_USAGE_MEDIA,
+ "rendererFlags": 0
+}
+var tonePlayer;
+
+audio.createTonePlayer(audioRendererInfo, (err, data) => {
+ console.info(`callback call createTonePlayer: audioRendererInfo: ${audioRendererInfo}`);
+ if (err) {
+ console.error(`callback call createTonePlayer return error: ${err.message}`);
+ } else {
+ console.info(`callback call createTonePlayer return data: ${data}`);
+ tonePlayer = data;
+ }
+});
+```
+
+## audio.createTonePlayer9+
+
+createTonePlayer(options: AudioRendererInfo): Promise<TonePlayer>
+
+创建DTMF播放器。使用Promise方式异步返回结果。
+
+**系统能力:** SystemCapability.Multimedia.Audio.Tone
+
+**参数:**
+
+| 参数名 | 类型 | 必填 | 说明 |
+| :------ | :---------------------------------------------| :--- | :----------- |
+| options | [AudioRendererInfo](#audiorendererinfo8) | 是 | 配置音频渲染器信息。 |
+
+**返回值:**
+
+| 类型 | 说明 |
+| ----------------------------------------- | -------------------------------- |
+| Promise<[TonePlayer](#toneplayer9)> | Promise对象,返回音频渲染器对象。 |
+
+**示例:**
+
+```js
+import audio from '@ohos.multimedia.audio';
+async function createTonePlayer(){
+ var audioRendererInfo = {
+ "contentType": audio.ContentType.CONTENT_TYPE_MUSIC,
+ "streamUsage": audio.StreamUsage.STREAM_USAGE_MEDIA,
+ "rendererFlags": 0
+ }
+ let tonePlayer = await audio.createTonePlayer(this.audioRendererInfo);
+}
+```
+
## AudioVolumeType
枚举,音频流类型。
@@ -428,12 +501,13 @@ audio.createAudioCapturer(audioCapturerOptions).then((data) => {
**系统能力:** 以下各项对应的系统能力均为SystemCapability.Multimedia.Audio.Core
-| 名称 | 默认值 | 描述 |
-| ---------------------------------- | ------ | ---------- |
-| STREAM_USAGE_UNKNOWN | 0 | 未知类型。 |
-| STREAM_USAGE_MEDIA | 1 | 音频。 |
-| STREAM_USAGE_VOICE_COMMUNICATION | 2 | 语音通信。 |
-| STREAM_USAGE_NOTIFICATION_RINGTONE | 6 | 通知铃声。 |
+| 名称 | 默认值 | 描述 |
+| ------------------------------------------| ------ | ---------- |
+| STREAM_USAGE_UNKNOWN | 0 | 未知类型。 |
+| STREAM_USAGE_MEDIA | 1 | 音频。 |
+| STREAM_USAGE_VOICE_COMMUNICATION | 2 | 语音通信。 |
+| STREAM_USAGE_VOICE_ASSISTANT9+ | 3 | 语音播报。 |
+| STREAM_USAGE_NOTIFICATION_RINGTONE | 6 | 通知铃声。 |
## FocusType9+
@@ -712,11 +786,12 @@ getVolumeGroupInfos();
**系统能力:** 以下各项对应的系统能力均为SystemCapability.Multimedia.Audio.Core
-| 名称 | 默认值 | 描述 |
-| :------------------------------ | :----- | :--------------------- |
-| SOURCE_TYPE_INVALID | -1 | 无效的音频源。 |
-| SOURCE_TYPE_MIC | 0 | Mic音频源。 |
-| SOURCE_TYPE_VOICE_COMMUNICATION | 7 | 语音通话场景的音频源。 |
+| 名称 | 默认值 | 描述 |
+| :------------------------------------------- | :----- | :--------------------- |
+| SOURCE_TYPE_INVALID | -1 | 无效的音频源。 |
+| SOURCE_TYPE_MIC | 0 | Mic音频源。 |
+| SOURCE_TYPE_VOICE_RECOGNITION9+ | 1 | 语音识别源。 |
+| SOURCE_TYPE_VOICE_COMMUNICATION | 7 | 语音通话场景的音频源。 |
## AudioScene8+
@@ -731,7 +806,6 @@ getVolumeGroupInfos();
| AUDIO_SCENE_PHONE_CALL | 2 | 电话模式。 此接口为系统接口,三方应用不支持调用。 |
| AUDIO_SCENE_VOICE_CHAT | 3 | 语音聊天模式。 |
-
## AudioManager
管理音频音量和音频设备。在调用AudioManager的接口前,需要先通过[getAudioManager](#audiogetaudiomanager)创建实例。
@@ -3149,6 +3223,91 @@ audioManager.getRoutingManager((err,AudioRoutingManager)=>{
});
```
+### selectInputDevice9+
+
+selectInputDevice(inputAudioDevices: AudioDeviceDescriptors, callback: AsyncCallback<void>): void
+
+选择音频输入设备,当前只能选择一个输入设备,使用callback方式异步返回结果。
+
+**系统接口:** 该接口为系统接口
+
+**系统能力:** SystemCapability.Multimedia.Audio.Device
+
+**参数:**
+
+| 参数名 | 类型 | 必填 | 说明 |
+| --------------------------- | ------------------------------------------------------------ | ---- | ------------------------- |
+| inputAudioDevices | [AudioDeviceDescriptors](#audiodevicedescriptors) | 是 | 输入设备类。 |
+| callback | AsyncCallback<void> | 是 | 回调,返回选择输入设备结果。 |
+
+**示例:**
+```js
+var audioManager = audio.getAudioManager();
+let inputAudioDeviceDescriptor = [{
+ "deviceRole":audio.DeviceRole.INPUT_DEVICE,
+ "networkId":audio.LOCAL_NETWORK_ID,
+ "interruptGroupId":1,
+ "volumeGroupId":1 }];
+var audioRoutingManager;
+
+async function getRoutingManager(){
+ await audioManager.getRoutingManager().then((value) => {
+ audioRoutingManager = value;
+ audioRoutingManager.selectInputDevice(inputAudioDeviceDescriptor, (err) => {
+ if (err) {
+ console.error(`Result ERROR: ${err}`);
+ } else {
+ console.info('Select input devices result callback: SUCCESS'); }
+ });
+ });
+}
+```
+
+### selectInputDevice9+
+
+selectInputDevice(inputAudioDevices: AudioDeviceDescriptors): Promise<void>
+
+**系统接口:** 该接口为系统接口
+
+选择音频输入设备,当前只能选择一个输入设备,使用Promise方式异步返回结果。
+
+**系统能力:** SystemCapability.Multimedia.Audio.Device
+
+**参数:**
+
+| 参数名 | 类型 | 必填 | 说明 |
+| --------------------------- | ------------------------------------------------------------ | ---- | ------------------------- |
+| inputAudioDevices | [AudioDeviceDescriptors](#audiodevicedescriptors) | 是 | 输入设备类。 |
+
+**返回值:**
+
+| 类型 | 说明 |
+| --------------------- | --------------------------- |
+| Promise<void> | Promise返回选择输入设备结果。 |
+
+**示例:**
+
+```js
+var audioManager = audio.getAudioManager();
+let inputAudioDeviceDescriptor =[{
+ "deviceRole":audio.DeviceRole.INPUT_DEVICE,
+ "networkId":audio.LOCAL_NETWORK_ID,
+ "interruptGroupId":1,
+ "volumeGroupId":1 }];
+var audioRoutingManager;
+
+async function getRoutingManager(){
+ await audioManager.getRoutingManager().then((value) => {
+ audioRoutingManager = value;
+ audioRoutingManager.selectInputDevice(inputAudioDeviceDescriptor).then(() => {
+ console.info('Select input devices result promise: SUCCESS');
+ }).catch((err) => {
+ console.error(`Result ERROR: ${err}`);
+ });
+ });
+}
+```
+
### selectOutputDevice9+
selectOutputDevice(outputAudioDevices: AudioDeviceDescriptors, callback: AsyncCallback<void>): void
@@ -5039,4 +5198,255 @@ audioCapturer.on('stateChange', (state) => {
console.info('audio capturer state is: STATE_RUNNING');
}
});
-```
\ No newline at end of file
+```
+
+## ToneType 9+
+
+枚举,播放器的音调类型。
+
+**系统能力:** 以下各项对应的系统能力均为SystemCapability.Multimedia.Audio.Tone
+
+| 名称 | 默认值 | 描述 |
+| :------------------------------------------------ | :----- | :----------------------------|
+| TONE_TYPE_DIAL_0 | 0 | 键0的DTMF音。 |
+| TONE_TYPE_DIAL_1 | 1 | 键1的DTMF音。 |
+| TONE_TYPE_DIAL_2 | 2 | 键2的DTMF音。 |
+| TONE_TYPE_DIAL_3 | 3 | 键3的DTMF音。 |
+| TONE_TYPE_DIAL_4 | 4 | 键4的DTMF音。 |
+| TONE_TYPE_DIAL_5 | 5 | 键5的DTMF音。 |
+| TONE_TYPE_DIAL_6 | 6 | 键6的DTMF音。 |
+| TONE_TYPE_DIAL_7 | 7 | 键7的DTMF音。 |
+| TONE_TYPE_DIAL_8 | 8 | 键8的DTMF音。 |
+| TONE_TYPE_DIAL_9 | 9 | 键9的DTMF音。 |
+| TONE_TYPE_DIAL_S | 10 | 键*的DTMF音。 |
+| TONE_TYPE_DIAL_P | 11 | 键#的DTMF音。 |
+| TONE_TYPE_DIAL_A | 12 | 键A的DTMF音。 |
+| TONE_TYPE_DIAL_B | 13 | 键B的DTMF音。 |
+| TONE_TYPE_DIAL_C | 14 | 键C的DTMF音。 |
+| TONE_TYPE_DIAL_D | 15 | 键D的DTMF音。 |
+| TONE_TYPE_COMMON_SUPERVISORY_DIAL | 100 | 呼叫监管音调,拨号音。 |
+| TONE_TYPE_COMMON_SUPERVISORY_BUSY | 101 | 呼叫监管音调,忙。 |
+| TONE_TYPE_COMMON_SUPERVISORY_CONGESTION | 102 | 呼叫监管音调,拥塞。 |
+| TONE_TYPE_COMMON_SUPERVISORY_RADIO_ACK | 103 | 呼叫监管音调,无线电 ACK。 |
+| TONE_TYPE_COMMON_SUPERVISORY_RADIO_NOT_AVAILABLE | 104 | 呼叫监管音调,无线电不可用。 |
+| TONE_TYPE_COMMON_SUPERVISORY_CALL_WAITING | 106 | 呼叫监管音调,呼叫等待。 |
+| TONE_TYPE_COMMON_SUPERVISORY_RINGTONE | 107 | 呼叫监管音调,铃声。 |
+| TONE_TYPE_COMMON_PROPRIETARY_BEEP | 200 | 专有声调,一般蜂鸣声。 |
+| TONE_TYPE_COMMON_PROPRIETARY_ACK | 201 | 专有声调,ACK。 |
+| TONE_TYPE_COMMON_PROPRIETARY_PROMPT | 203 | 专有声调,PROMPT。 |
+| TONE_TYPE_COMMON_PROPRIETARY_DOUBLE_BEEP | 204 | 专有声调,双重蜂鸣声。 |
+
+## TonePlayer9+
+
+提供播放和管理DTMF(Dual Tone Multi Frequency,双音多频)音调的方法,包括各种系统监听音调、专有音调,如拨号音、通话回铃音等。
+
+### load9+
+
+load(type: ToneType, callback: AsyncCallback<void>): void
+
+加载DTMF音调配置。使用callback方式异步返回结果。
+
+**系统能力:** SystemCapability.Multimedia.Audio.Tone
+
+**参数:**
+
+| 参数名 | 类型 | 必填 | 说明 |
+| :--------------| :-------------------------- | :-----| :------------------------------ |
+| type | ToneType(#tonetype9) | 是 | 配置的音调类型。 |
+| callback | AsyncCallback | 是 | 使用callback方式异步返回缓冲区。 |
+
+**示例:**
+
+```js
+tonePlayer.load(audio.ToneType.TONE_TYPE_DIAL_5, (err) => {
+ if (err) {
+ console.error(`callback call load failed error: ${err.message}`);
+ return;
+ } else {
+ console.info('callback call load success');
+ }
+});
+```
+
+### load9+
+
+load(type: ToneType): Promise<void>
+
+加载DTMF音调配置。使用Promise方式异步返回结果。
+
+**系统能力:** SystemCapability.Multimedia.Audio.Tone
+
+**参数:**
+
+| 参数名 | 类型 | 必填 | 说明 |
+| :------------- | :--------------------- | :--- | ---------------- |
+| type | ToneType(#tonetype9) | 是 | 配置的音调类型。 |
+
+**返回值:**
+
+| 类型 | 说明 |
+| :--------------| :-------------------------- |
+| Promise | 使用Promise方式异步返回结果。 |
+
+**示例:**
+
+```js
+tonePlayer.load(audio.ToneType.TONE_TYPE_DIAL_1).then(() => {
+ console.info('promise call load ');
+}).catch(() => {
+ console.error('promise call load fail');
+});
+```
+
+### start9+
+
+start(callback: AsyncCallback<void>): void
+
+启动DTMF音调播放。使用callback方式异步返回结果。
+
+**系统能力:** SystemCapability.Multimedia.Audio.Tone
+
+**参数:**
+
+| 参数名 | 类型 | 必填 | 说明 |
+| :------- | :------------------- | :--- | :----------------------------- |
+| callback | AsyncCallback | 是 | 使用callback方式异步返回结果。 |
+
+**示例:**
+
+```js
+tonePlayer.start((err) => {
+ if (err) {
+ console.error(`callback call start failed error: ${err.message}`);
+ return;
+ } else {
+ console.info('callback call start success');
+ }
+});
+```
+
+### start9+
+
+start(): Promise<void>
+
+启动DTMF音调播放。使用Promise方式异步返回结果。
+
+**系统能力:** SystemCapability.Multimedia.Audio.Tone
+
+**返回值:**
+
+| 类型 | 说明 |
+| :------------- | :---------------------------- |
+| Promise | 使用Promise方式异步返回结果。 |
+
+**示例:**
+
+```js
+tonePlayer.start().then(() => {
+ console.info('promise call start');
+}).catch(() => {
+ console.error('promise call start fail');
+});
+```
+
+### stop9+
+
+stop(callback: AsyncCallback<void>): void
+
+停止当前正在播放的音调。使用callback方式异步返回结果。
+
+**系统能力:** SystemCapability.Multimedia.Audio.Tone
+
+**参数:**
+
+| 参数名 | 类型 | 必填 | 说明 |
+| :------- | :------------------- | :--- | :----------------------------- |
+| callback | AsyncCallback | 是 | 使用callback方式异步返回结果。 |
+
+**示例:**
+
+```js
+tonePlayer.stop((err) => {
+ if (err) {
+ console.error(`callback call stop error: ${err.message}`);
+ return;
+ } else {
+ console.error('callback call stop success ');
+ }
+});
+```
+
+### stop9+
+
+stop(): Promise<void>
+
+停止当前正在播放的音调。使用Promise方式异步返回结果。
+
+**系统能力:** SystemCapability.Multimedia.Audio.Tone
+
+**返回值:**
+
+| 类型 | 说明 |
+| :------------- | :---------------------------- |
+| Promise | 使用Promise方式异步返回结果。 |
+
+**示例:**
+
+```js
+tonePlayer.stop().then(() => {
+ console.info('promise call stop finish');
+}).catch(() => {
+ console.error('promise call stop fail');
+});
+```
+
+### release9+
+
+release(callback: AsyncCallback<void>): void
+
+释放与此TonePlay对象关联的资源。使用callback方式异步返回结果。
+
+**系统能力:** SystemCapability.Multimedia.Audio.Tone
+
+**参数:**
+
+| 参数名 | 类型 | 必填 | 说明 |
+| :------- | :------------------- | :--- | :---------------------------- |
+| callback | AsyncCallback | 是 | 使用callback方式异步返回结果。 |
+
+**示例:**
+
+```js
+tonePlayer.release((err) => {
+ if (err) {
+ console.error(`callback call release failed error: ${err.message}`);
+ return;
+ } else {
+ console.info('callback call release success ');
+ }
+});
+```
+
+### release9+
+
+release(): Promise<void>
+
+释放与此TonePlay对象关联的资源。使用Promise方式异步返回结果。
+
+**系统能力:** SystemCapability.Multimedia.Audio.Tone
+
+**返回值:**
+
+| 类型 | 说明 |
+| :------------- | :---------------------------- |
+| Promise | 使用Promise方式异步返回结果。 |
+
+**示例:**
+
+```js
+tonePlayer.release().then(() => {
+ console.info('promise call release');
+}).catch(() => {
+ console.error('promise call release fail');
+});
+```
diff --git a/zh-cn/application-dev/reference/apis/js-apis-continuation-continuationManager.md b/zh-cn/application-dev/reference/apis/js-apis-continuation-continuationManager.md
index 6932941c9689c232a7a6f2c96efd4db620a3fe19..b759733187f276b6396380571bee3f48c1d930b0 100644
--- a/zh-cn/application-dev/reference/apis/js-apis-continuation-continuationManager.md
+++ b/zh-cn/application-dev/reference/apis/js-apis-continuation-continuationManager.md
@@ -10,16 +10,18 @@ continuationManager模块提供了流转/协同入口管理服务能力,包括
## 导入模块
-```js
+```ts
import continuationManager from '@ohos.continuation.continuationManager'
```
-## continuationManager.register
+## continuationManager.register(deprecated)
register(callback: AsyncCallback\): void;
注册流转管理服务,并获取对应的注册token,无过滤条件,使用AsyncCallback方式作为异步方法。
+> 从API Version 9开始不再维护,建议使用[registerContinuation](#continuationmanagerregistercontinuation9)替代。
+
**系统能力**:SystemCapability.Ability.DistributedAbilityManager
**参数:**
@@ -30,7 +32,7 @@ register(callback: AsyncCallback\): void;
**示例:**
- ```js
+ ```ts
let token = -1;
continuationManager.register((err, data) => {
if (err.code != 0) {
@@ -42,12 +44,14 @@ register(callback: AsyncCallback\): void;
});
```
-## continuationManager.register
+## continuationManager.register(deprecated)
register(options: ContinuationExtraParams, callback: AsyncCallback\): void;
连接流转管理服务,并获取对应的注册token,使用AsyncCallback方式作为异步方法。
+> 从API Version 9开始不再维护,建议使用[registerContinuation](#continuationmanagerregistercontinuation9)替代。
+
**系统能力**:SystemCapability.Ability.DistributedAbilityManager
**参数:**
@@ -59,7 +63,7 @@ register(options: ContinuationExtraParams, callback: AsyncCallback\): vo
**示例:**
- ```js
+ ```ts
let token = -1;
let continuationExtraParams = {
deviceType: ["00E"]
@@ -74,12 +78,14 @@ register(options: ContinuationExtraParams, callback: AsyncCallback\): vo
});
```
-## continuationManager.register
+## continuationManager.register(deprecated)
register(options?: ContinuationExtraParams): Promise\;
连接流转管理服务,并获取对应的注册token,使用Promise方式作为异步方法。
+> 从API Version 9开始不再维护,建议使用[registerContinuation](#continuationmanagerregistercontinuation9)替代。
+
**系统能力**:SystemCapability.Ability.DistributedAbilityManager
**参数:**
@@ -96,7 +102,7 @@ register(options?: ContinuationExtraParams): Promise\;
**示例:**
- ```js
+ ```ts
let token = -1;
let continuationExtraParams = {
deviceType: ["00E"]
@@ -111,6 +117,116 @@ register(options?: ContinuationExtraParams): Promise\;
});
```
+## continuationManager.registerContinuation9+
+
+registerContinuation(callback: AsyncCallback\): void;
+
+注册流转管理服务,并获取对应的注册token,无过滤条件,使用AsyncCallback方式作为异步方法。
+
+**系统能力**:SystemCapability.Ability.DistributedAbilityManager
+
+**参数:**
+
+ | 参数名 | 类型 | 必填 | 说明 |
+ | -------- | -------- | -------- | -------- |
+ | callback | AsyncCallback\ | 是 | AsyncCallback形式返回流转管理服务连接后生成的token。 |
+
+**示例:**
+
+ ```ts
+ let token = -1;
+ try {
+ continuationManager.registerContinuation((err, data) => {
+ if (err.code != 0) {
+ console.error('registerContinuation failed, cause: ' + JSON.stringify(err));
+ return;
+ }
+ console.info('registerContinuation finished, ' + JSON.stringify(data));
+ token = data;
+ });
+ } catch (err) {
+ console.error('registerContinuation failed, cause: ' + JSON.stringify(err));
+ }
+ ```
+
+## continuationManager.registerContinuation9+
+
+registerContinuation(options: ContinuationExtraParams, callback: AsyncCallback\): void;
+
+连接流转管理服务,并获取对应的注册token,使用AsyncCallback方式作为异步方法。
+
+**系统能力**:SystemCapability.Ability.DistributedAbilityManager
+
+**参数:**
+
+ | 参数名 | 类型 | 必填 | 说明 |
+ | -------- | -------- | -------- | -------- |
+ | options | [ContinuationExtraParams](js-apis-continuation-continuationExtraParams.md) | 是 | 过滤可选择设备列表的额外参数。 |
+ | callback | AsyncCallback\ | 是 | AsyncCallback形式返回流转管理服务连接后生成的token。 |
+
+**示例:**
+
+ ```ts
+ let token = -1;
+ let continuationExtraParams = {
+ deviceType: ["00E"]
+ };
+ try {
+ continuationManager.registerContinuation(continuationExtraParams, (err, data) => {
+ if (err.code != 0) {
+ console.error('registerContinuation failed, cause: ' + JSON.stringify(err));
+ return;
+ }
+ console.info('registerContinuation finished, ' + JSON.stringify(data));
+ token = data;
+ });
+ } catch (err) {
+ console.error('registerContinuation failed, cause: ' + JSON.stringify(err));
+ }
+ ```
+
+## continuationManager.registerContinuation9+
+
+registerContinuation(options?: ContinuationExtraParams): Promise\;
+
+连接流转管理服务,并获取对应的注册token,使用Promise方式作为异步方法。
+
+**系统能力**:SystemCapability.Ability.DistributedAbilityManager
+
+**参数:**
+
+ | 参数名 | 类型 | 必填 | 说明 |
+ | -------- | -------- | -------- | -------- |
+ | options | [ContinuationExtraParams](js-apis-continuation-continuationExtraParams.md) | 否 | 过滤可选择设备列表的额外参数,该参数可缺省|
+
+**返回值:**
+
+| 类型 | 说明 |
+| ------------------------- | ------------------ |
+| Promise\ | Promise形式返回流转管理服务连接后生成的token。 |
+
+**示例:**
+
+ ```ts
+ let token = -1;
+ let continuationExtraParams = {
+ deviceType: ["00E"]
+ };
+ try {
+ continuationManager.register(continuationExtraParams)
+ .then((data) => {
+ console.info('registerContinuation finished, ' + JSON.stringify(data));
+ token = data;
+ })
+ .catch((err) => {
+ console.error('registerContinuation failed, cause: ' + JSON.stringify(err));
+ });
+ } catch (err) {
+ console.error('registerContinuation failed, cause: ' + JSON.stringify(err));
+ }
+ ```
+
+
## continuationManager.on("deviceConnect")(deprecated)
on(type: "deviceConnect", callback: Callback\): void;
@@ -130,7 +246,7 @@ on(type: "deviceConnect", callback: Callback\): void;
**示例:**
- ```js
+ ```ts
continuationManager.on("deviceConnect", (data) => {
console.info('onDeviceConnect deviceId: ' + JSON.stringify(data.id));
console.info('onDeviceConnect deviceType: ' + JSON.stringify(data.type));
@@ -157,7 +273,7 @@ on(type: "deviceDisconnect", callback: Callback\): void;
**示例:**
- ```js
+ ```ts
continuationManager.on("deviceDisconnect", (data) => {
console.info('onDeviceDisconnect deviceId: ' + JSON.stringify(data));
});
@@ -182,7 +298,7 @@ off(type: "deviceConnect", callback?: Callback\): void;
**示例:**
- ```js
+ ```ts
continuationManager.off("deviceConnect", (data) => {
console.info('onDeviceConnect deviceId: ' + JSON.stringify(data.id));
console.info('onDeviceConnect deviceType: ' + JSON.stringify(data.type));
@@ -209,7 +325,7 @@ off(type: "deviceDisconnect", callback?: Callback\): void;
**示例:**
- ```js
+ ```ts
continuationManager.off("deviceDisconnect", (data) => {
console.info('onDeviceDisconnect deviceId: ' + JSON.stringify(data));
});
@@ -233,16 +349,20 @@ on(type: "deviceConnect", token: number, callback: Callback\ {
- console.info('onDeviceConnect len: ' + data.length);
- for (let i = 0; i < data.length; i++) {
- console.info('onDeviceConnect deviceId: ' + JSON.stringify(data[i].id));
- console.info('onDeviceConnect deviceType: ' + JSON.stringify(data[i].type));
- console.info('onDeviceConnect deviceName: ' + JSON.stringify(data[i].name));
- }
- });
+ try {
+ continuationManager.on("deviceConnect", token, (data) => {
+ console.info('onDeviceConnect len: ' + data.length);
+ for (let i = 0; i < data.length; i++) {
+ console.info('onDeviceConnect deviceId: ' + JSON.stringify(data[i].id));
+ console.info('onDeviceConnect deviceType: ' + JSON.stringify(data[i].type));
+ console.info('onDeviceConnect deviceName: ' + JSON.stringify(data[i].name));
+ }
+ });
+ } catch (err) {
+ console.error('on failed, cause: ' + JSON.stringify(err));
+ }
```
## continuationManager.on("deviceDisconnect")9+
@@ -263,15 +383,19 @@ on(type: "deviceDisconnect", token: number, callback: Callback\>)
**示例:**
- ```js
+ ```ts
let token = 1;
- continuationManager.on("deviceDisconnect", token, (data) => {
- console.info('onDeviceDisconnect len: ' + data.length);
- for (let i = 0; i < data.length; i++) {
- console.info('onDeviceDisconnect deviceId: ' + JSON.stringify(data[i]));
- }
- console.info('onDeviceDisconnect finished.');
- });
+ try {
+ continuationManager.on("deviceDisconnect", token, (data) => {
+ console.info('onDeviceDisconnect len: ' + data.length);
+ for (let i = 0; i < data.length; i++) {
+ console.info('onDeviceDisconnect deviceId: ' + JSON.stringify(data[i]));
+ }
+ console.info('onDeviceDisconnect finished.');
+ });
+ } catch (err) {
+ console.error('on failed, cause: ' + JSON.stringify(err));
+ }
```
## continuationManager.off("deviceConnect")9+
@@ -291,9 +415,13 @@ off(type: "deviceConnect", token: number): void;
**示例:**
- ```js
+ ```ts
let token = 1;
- continuationManager.off("deviceConnect", token);
+ try {
+ continuationManager.off("deviceConnect", token);
+ } catch (err) {
+ console.error('off failed, cause: ' + JSON.stringify(err));
+ }
```
## continuationManager.off("deviceDisconnect")9+
@@ -313,17 +441,23 @@ off(type: "deviceDisconnect", token: number): void;
**示例:**
- ```js
+ ```ts
let token = 1;
- continuationManager.off("deviceDisconnect", token);
+ try {
+ continuationManager.off("deviceDisconnect", token);
+ } catch (err) {
+ console.error('off failed, cause: ' + JSON.stringify(err));
+ }
```
-## continuationManager.startDeviceManager
+## continuationManager.startDeviceManager(deprecated)
startDeviceManager(token: number, callback: AsyncCallback\): void;
拉起设备选择模块,可显示组网内可选择设备列表信息,无过滤条件,使用AsyncCallback方式作为异步方法。
+> 从API Version 9开始不再维护,建议使用[startContinuationDeviceManager](#continuationmanagerondeviceconnect9)替代。
+
**系统能力**:SystemCapability.Ability.DistributedAbilityManager
**参数:**
@@ -335,7 +469,7 @@ startDeviceManager(token: number, callback: AsyncCallback\): void;
**示例:**
- ```js
+ ```ts
let token = 1;
continuationManager.startDeviceManager(token, (err, data) => {
if (err.code != 0) {
@@ -346,12 +480,14 @@ startDeviceManager(token: number, callback: AsyncCallback\): void;
});
```
-## continuationManager.startDeviceManager
+## continuationManager.startDeviceManager(deprecated)
startDeviceManager(token: number, options: ContinuationExtraParams, callback: AsyncCallback\): void;
拉起设备选择模块,可显示组网内可选择设备列表信息,使用AsyncCallback方式作为异步方法。
+> 从API Version 9开始不再维护,建议使用[startContinuationDeviceManager](#continuationmanagerstartcontinuationdevicemanager9)替代。
+
**系统能力**:SystemCapability.Ability.DistributedAbilityManager
**参数:**
@@ -364,7 +500,7 @@ startDeviceManager(token: number, options: ContinuationExtraParams, callback: As
**示例:**
- ```js
+ ```ts
let token = 1;
let continuationExtraParams = {
deviceType: ["00E"]
@@ -378,12 +514,14 @@ startDeviceManager(token: number, options: ContinuationExtraParams, callback: As
});
```
-## continuationManager.startDeviceManager
+## continuationManager.startDeviceManager(deprecated)
startDeviceManager(token: number, options?: ContinuationExtraParams): Promise\;
拉起设备选择模块,可显示组网内可选择设备列表信息,使用Promise方式作为异步方法。
+> 从API Version 9开始不再维护,建议使用[startContinuationDeviceManager](#continuationmanagerstartcontinuationdevicemanager9)替代。
+
**系统能力**:SystemCapability.Ability.DistributedAbilityManager
**参数:**
@@ -401,7 +539,7 @@ startDeviceManager(token: number, options?: ContinuationExtraParams): Promise\9+
+
+startContinuationDeviceManager(token: number, callback: AsyncCallback\): void;
+
+拉起设备选择模块,可显示组网内可选择设备列表信息,无过滤条件,使用AsyncCallback方式作为异步方法。
+
+**系统能力**:SystemCapability.Ability.DistributedAbilityManager
+
+**参数:**
+
+ | 参数名 | 类型 | 必填 | 说明 |
+ | -------- | -------- | -------- | -------- |
+ | token | number | 是 | 注册后的token。 |
+ | callback | AsyncCallback\ | 是 | AsyncCallback形式返回接口调用结果。 |
+
+**示例:**
+
+ ```ts
+ let token = 1;
+ try {
+ continuationManager.startContinuationDeviceManager(token, (err, data) => {
+ if (err.code != 0) {
+ console.error('startContinuationDeviceManager failed, cause: ' + JSON.stringify(err));
+ return;
+ }
+ console.info('startContinuationDeviceManager finished, ' + JSON.stringify(data));
+ });
+ } catch (err) {
+ console.error('startContinuationDeviceManager failed, cause: ' + JSON.stringify(err));
+ }
+ ```
+
+## continuationManager.startContinuationDeviceManager9+
+
+startContinuationDeviceManager(token: number, options: ContinuationExtraParams, callback: AsyncCallback\): void;
+
+拉起设备选择模块,可显示组网内可选择设备列表信息,使用AsyncCallback方式作为异步方法。
+
+**系统能力**:SystemCapability.Ability.DistributedAbilityManager
+
+**参数:**
+
+ | 参数名 | 类型 | 必填 | 说明 |
+ | -------- | -------- | -------- | -------- |
+ | token | number | 是 | 注册后的token。 |
+ | options | [ContinuationExtraParams](js-apis-continuation-continuationExtraParams.md) | 是 | 过滤可选择设备列表的额外参数。 |
+ | callback | AsyncCallback\ | 是 | AsyncCallback形式返回接口调用结果。 |
+
+**示例:**
+
+ ```ts
+ let token = 1;
+ let continuationExtraParams = {
+ deviceType: ["00E"]
+ };
+ try {
+ continuationManager.startContinuationDeviceManager(token, continuationExtraParams, (err, data) => {
+ if (err.code != 0) {
+ console.error('startContinuationDeviceManager failed, cause: ' + JSON.stringify(err));
+ return;
+ }
+ console.info('startContinuationDeviceManager finished, ' + JSON.stringify(data));
+ });
+ } catch (err) {
+ console.error('startContinuationDeviceManager failed, cause: ' + JSON.stringify(err));
+ }
+ ```
+
+## continuationManager.startContinuationDeviceManager9+
+
+startContinuationDeviceManager(token: number, options?: ContinuationExtraParams): Promise\;
+
+拉起设备选择模块,可显示组网内可选择设备列表信息,使用Promise方式作为异步方法。
+
+**系统能力**:SystemCapability.Ability.DistributedAbilityManager
+
+**参数:**
+
+ | 参数名 | 类型 | 必填 | 说明 |
+ | -------- | -------- | -------- | -------- |
+ | token | number | 是 | 注册后的token。 |
+ | options | [ContinuationExtraParams](js-apis-continuation-continuationExtraParams.md) | 否 | 过滤可选择设备列表的额外参数,该参数可缺省|
+
+**返回值:**
+
+| 类型 | 说明 |
+| ------------------------- | ------------------ |
+| Promise\ | Promise形式返回接口调用结果。 |
+
+**示例:**
+
+ ```ts
+ let token = 1;
+ let continuationExtraParams = {
+ deviceType: ["00E"]
+ };
+ try {
+ continuationManager.startContinuationDeviceManager(token, continuationExtraParams)
+ .then((data) => {
+ console.info('startContinuationDeviceManager finished, ' + JSON.stringify(data));
+ })
+ .catch((err) => {
+ console.error('startContinuationDeviceManager failed, cause: ' + JSON.stringify(err));
+ });
+ } catch (err) {
+ console.error('startContinuationDeviceManager failed, cause: ' + JSON.stringify(err));
+ }
+ ```
+
+## continuationManager.updateConnectStatus(deprecated)
updateConnectStatus(token: number, deviceId: string, status: DeviceConnectState, callback: AsyncCallback\): void;
通知设备选择模块,更新当前的连接状态,使用AsyncCallback方式作为异步方法。
+> 从API Version 9开始不再维护,建议使用[updateContinuationState](#continuationmanagerupdatecontinuationstate9)替代。
+
**系统能力**:SystemCapability.Ability.DistributedAbilityManager
**参数:**
@@ -434,7 +683,7 @@ updateConnectStatus(token: number, deviceId: string, status: DeviceConnectState,
**示例:**
- ```js
+ ```ts
let token = 1;
let deviceId: string = "test deviceId";
continuationManager.updateConnectStatus(token, deviceId, continuationManager.DeviceConnectState.CONNECTED, (err, data) => {
@@ -446,12 +695,14 @@ updateConnectStatus(token: number, deviceId: string, status: DeviceConnectState,
});
```
-## continuationManager.updateConnectStatus
+## continuationManager.updateConnectStatus(deprecated)
updateConnectStatus(token: number, deviceId: string, status: DeviceConnectState): Promise\;
通知设备选择模块,更新当前的连接状态,使用Promise方式作为异步方法。
+> 从API Version 9开始不再维护,建议使用[updateContinuationState](#continuationmanagerupdatecontinuationstate9)替代。
+
**系统能力**:SystemCapability.Ability.DistributedAbilityManager
**参数:**
@@ -470,7 +721,7 @@ updateConnectStatus(token: number, deviceId: string, status: DeviceConnectState)
**示例:**
- ```js
+ ```ts
let token = 1;
let deviceId: string = "test deviceId";
continuationManager.updateConnectStatus(token, deviceId, continuationManager.DeviceConnectState.CONNECTED)
@@ -482,12 +733,90 @@ updateConnectStatus(token: number, deviceId: string, status: DeviceConnectState)
});
```
-## continuationManager.unregister
+## continuationManager.updateContinuationState9+
+
+updateContinuationState(token: number, deviceId: string, status: DeviceConnectState, callback: AsyncCallback\): void;
+
+通知设备选择模块,更新当前的连接状态,使用AsyncCallback方式作为异步方法。
+
+**系统能力**:SystemCapability.Ability.DistributedAbilityManager
+
+**参数:**
+
+ | 参数名 | 类型 | 必填 | 说明 |
+ | -------- | -------- | -------- | -------- |
+ | token | number | 是 | 注册后的token。 |
+ | deviceId | string | 是 | 设备ID。 |
+ | status | [DeviceConnectState](#deviceconnectstate) | 是 | 设备连接状态。 |
+ | callback | AsyncCallback\ | 是 | AsyncCallback形式返回接口调用结果。 |
+
+**示例:**
+
+ ```ts
+ let token = 1;
+ let deviceId: string = "test deviceId";
+ try {
+ continuationManager.updateContinuationState(token, deviceId, continuationManager.DeviceConnectState.CONNECTED, (err, data) => {
+ if (err.code != 0) {
+ console.error('updateContinuationState failed, cause: ' + JSON.stringify(err));
+ return;
+ }
+ console.info('updateContinuationState finished, ' + JSON.stringify(data));
+ });
+ } catch (err) {
+ console.error('updateContinuationState failed, cause: ' + JSON.stringify(err));
+ }
+ ```
+
+## continuationManager.updateContinuationState9+
+
+updateContinuationState(token: number, deviceId: string, status: DeviceConnectState): Promise\;
+
+通知设备选择模块,更新当前的连接状态,使用Promise方式作为异步方法。
+
+**系统能力**:SystemCapability.Ability.DistributedAbilityManager
+
+**参数:**
+
+ | 参数名 | 类型 | 必填 | 说明 |
+ | -------- | -------- | -------- | -------- |
+ | token | number | 是 | 注册后的token。 |
+ | deviceId | string | 是 | 设备ID。 |
+ | status | [DeviceConnectState](#deviceconnectstate) | 是 | 设备连接状态。 |
+
+**返回值:**
+
+| 类型 | 说明 |
+| ------------------------- | ------------------ |
+| Promise\ | Promise形式返回接口调用结果。 |
+
+**示例:**
+
+ ```ts
+ let token = 1;
+ let deviceId: string = "test deviceId";
+ try {
+ continuationManager.updateContinuationState(token, deviceId, continuationManager.DeviceConnectState.CONNECTED)
+ .then((data) => {
+ console.info('updateContinuationState finished, ' + JSON.stringify(data));
+ })
+ .catch((err) => {
+ console.error('updateContinuationState failed, cause: ' + JSON.stringify(err));
+ });
+ } catch (err) {
+ console.error('updateContinuationState failed, cause: ' + JSON.stringify(err));
+ }
+ ```
+
+
+## continuationManager.unregister(deprecated)
unregister(token: number, callback: AsyncCallback\): void;
解注册流转管理服务,传入注册时获取的token进行解注册,使用AsyncCallback方式作为异步方法。
+> 从API Version 9开始不再维护,建议使用[unregisterContinuation](#continuationmanagerunregistercontinuation9)替代。
+
**系统能力**:SystemCapability.Ability.DistributedAbilityManager
**参数:**
@@ -499,7 +828,7 @@ unregister(token: number, callback: AsyncCallback\): void;
**示例:**
- ```js
+ ```ts
let token = 1;
continuationManager.unregister(token, (err, data) => {
if (err.code != 0) {
@@ -510,12 +839,14 @@ unregister(token: number, callback: AsyncCallback\): void;
});
```
-## continuationManager.unregister
+## continuationManager.unregister(deprecated)
unregister(token: number): Promise\;
解注册流转管理服务,传入注册时获取的token进行解注册,使用Promise方式作为异步方法。
+> 从API Version 9开始不再维护,建议使用[unregisterContinuation](#continuationmanagerunregistercontinuation9)替代。
+
**系统能力**:SystemCapability.Ability.DistributedAbilityManager
**参数:**
@@ -532,7 +863,7 @@ unregister(token: number): Promise\;
**示例:**
- ```js
+ ```ts
let token = 1;
continuationManager.unregister(token)
.then((data) => {
@@ -543,6 +874,76 @@ unregister(token: number): Promise\;
});
```
+## continuationManager.unregisterContinuation9+
+
+unregisterContinuation(token: number, callback: AsyncCallback\): void;
+
+解注册流转管理服务,传入注册时获取的token进行解注册,使用AsyncCallback方式作为异步方法。
+
+**系统能力**:SystemCapability.Ability.DistributedAbilityManager
+
+**参数:**
+
+ | 参数名 | 类型 | 必填 | 说明 |
+ | -------- | -------- | -------- | -------- |
+ | token | number | 是 | 注册后的token。 |
+ | callback | AsyncCallback\ | 是 | AsyncCallback形式返回接口调用结果。 |
+
+**示例:**
+
+ ```ts
+ let token = 1;
+ try {
+ continuationManager.unregisterContinuation(token, (err, data) => {
+ if (err.code != 0) {
+ console.error('unregisterContinuation failed, cause: ' + JSON.stringify(err));
+ return;
+ }
+ console.info('unregisterContinuation finished, ' + JSON.stringify(data));
+ });
+ } catch (err) {
+ console.error('unregisterContinuation failed, cause: ' + JSON.stringify(err));
+ }
+ ```
+
+## continuationManager.unregisterContinuation9+
+
+unregisterContinuation(token: number): Promise\;
+
+解注册流转管理服务,传入注册时获取的token进行解注册,使用Promise方式作为异步方法。
+
+**系统能力**:SystemCapability.Ability.DistributedAbilityManager
+
+**参数:**
+
+ | 参数名 | 类型 | 必填 | 说明 |
+ | -------- | -------- | -------- | -------- |
+ | token | number | 是 | 注册后的token。 |
+
+**返回值:**
+
+| 类型 | 说明 |
+| ------------------------- | ------------------ |
+| Promise\ | Promise形式返回接口调用结果。 |
+
+**示例:**
+
+ ```ts
+ let token = 1;
+ try {
+ continuationManager.unregisterContinuation(token)
+ .then((data) => {
+ console.info('unregisterContinuation finished, ' + JSON.stringify(data));
+ })
+ .catch((err) => {
+ console.error('unregisterContinuation failed, cause: ' + JSON.stringify(err));
+ });
+ } catch (err) {
+ console.error('unregisterContinuation failed, cause: ' + JSON.stringify(err));
+ }
+ ```
+
+
## DeviceConnectState
设备连接状态。
diff --git a/zh-cn/application-dev/reference/apis/js-apis-device-info.md b/zh-cn/application-dev/reference/apis/js-apis-device-info.md
index 65c69aa3057f0c586e7d3e03980def48bf66e97a..2a302cf33e2e0f5e6605e468b8ddf61f1f588c66 100644
--- a/zh-cn/application-dev/reference/apis/js-apis-device-info.md
+++ b/zh-cn/application-dev/reference/apis/js-apis-device-info.md
@@ -1,5 +1,7 @@
# 设备信息
+本模块提供产品信息。
+
>  **说明:**
> 本模块首批接口从API version 6开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。
@@ -11,11 +13,11 @@ import deviceInfo from '@ohos.deviceInfo'
## 属性
-**系统能力**:以下各项对应的系统能力均为SystemCapability.Startup.SystemInfo。
+**系统能力**:SystemCapability.Startup.SystemInfo。
**权限**:以下各项所需要的权限有所不同,详见下表。
-| 名称 | 参数类型 | 可读 | 可写 | 描述 |
+| 名称 | 类型 | 可读 | 可写 | 说明 |
| -------- | -------- | -------- | -------- | -------- |
| deviceType | string | 是 | 否 | 设备类型。 |
| manufacture | string | 是 | 否 | 设备厂家名称。 |
diff --git a/zh-cn/application-dev/reference/apis/js-apis-distributedMissionManager.md b/zh-cn/application-dev/reference/apis/js-apis-distributedMissionManager.md
index e8ca23e3ff2a86e54745961919e06caf0b766b96..4cba4c6d6ea8c76ad4e8167305ffa1dd30fd79e9 100755
--- a/zh-cn/application-dev/reference/apis/js-apis-distributedMissionManager.md
+++ b/zh-cn/application-dev/reference/apis/js-apis-distributedMissionManager.md
@@ -1,6 +1,6 @@
# 分布式任务管理
-分布式任务管理模块提供跨设备系统任务管理能力,包括注册系统任务状态监听、取消系统任务状态监听、开始同步远端任务列表、停止同步远端任务列表操作。
+分布式任务管理模块提供跨设备系统任务管理能力,包括注册系统任务状态监听、取消系统任务状态监听、开始同步远端任务列表、停止同步远端任务列表、迁移任务操作。
> **说明:**
>
@@ -48,16 +48,23 @@ registerMissionListener(parameter: MissionDeviceInfo, options: MissionCallback,
console.log('NotifyNetDisconnect state ' + JSON.stringify(state));
}
var parameter = {
- deviceId: remoteDeviceId
+ deviceId: remoteDeviceId
};
var options = {
notifyMissionsChanged: NotifyMissionsChanged,
notifySnapshot: NotifySnapshot,
notifyNetDisconnect: NotifyNetDisconnect
}
- distributedMissionManager.registerMissionListener(parameter, options, (error) => {
- console.log("error.code = " + error.code)
- })
+ try {
+ distributedMissionManager.registerMissionListener(parameter, options, (error) => {
+ if (error.code != 0) {
+ console.error('registerMissionListener failed, cause: ' + JSON.stringify(error))
+ }
+ console.info('registerMissionListener finished')
+ })
+ } catch (error) {
+ console.error('registerMissionListener failed, cause: ' + JSON.stringify(error))
+ }
```
## distributedMissionManager.registerMissionListener
@@ -97,19 +104,23 @@ registerMissionListener(parameter: MissionDeviceInfo, options: MissionCallback):
console.log('NotifyNetDisconnect state ' + JSON.stringify(state));
}
var parameter = {
- deviceId: remoteDeviceId
+ deviceId: remoteDeviceId
};
var options = {
notifyMissionsChanged: NotifyMissionsChanged,
notifySnapshot: NotifySnapshot,
notifyNetDisconnect: NotifyNetDisconnect
}
- distributedMissionManager.registerMissionListener(parameter, options)
- .then(data => {
- console.info('success data is ' + data);
- }).catch(error => {
- console.info('error error is ' + error);
- })
+ try {
+ distributedMissionManager.registerMissionListener(parameter, options)
+ .then(data => {
+ console.info('registerMissionListener finished, ' + JSON.stringify(data));
+ }).catch(error => {
+ console.error('registerMissionListener failed, cause: ' + JSON.stringify(error));
+ })
+ } catch (error) {
+ console.error('registerMissionListener failed, cause: ' + JSON.stringify(error))
+ }
```
@@ -134,11 +145,18 @@ unRegisterMissionListener(parameter: MissionDeviceInfo, callback: AsyncCallback&
```ts
var parameter = {
- deviceId: remoteDeviceId
+ deviceId: remoteDeviceId
};
- distributedMissionManager.unRegisterMissionListener(parameter, (error) => {
- console.log("error.code = " + error.code)
- })
+ try {
+ distributedMissionManager.unRegisterMissionListener(parameter, (error) => {
+ if (error.code != 0) {
+ console.error('unRegisterMissionListener failed, cause: ' + JSON.stringify(error))
+ }
+ console.info('unRegisterMissionListener finished')
+ })
+ } catch (error) {
+ console.error('unRegisterMissionListener failed, cause: ' + JSON.stringify(error))
+ }
```
@@ -168,14 +186,18 @@ unRegisterMissionListener(parameter: MissionDeviceInfo): Promise<void>
```ts
var parameter = {
- deviceId: remoteDeviceId
+ deviceId: remoteDeviceId
};
- distributedMissionManager.unRegisterMissionListener(parameter)
- .then(data => {
- console.info('success data is ' + data);
- }).catch(error => {
- console.info('error error is ' + error);
- })
+ try {
+ distributedMissionManager.unRegisterMissionListener(parameter)
+ .then(data => {
+ console.info('unRegisterMissionListener finished, ' + JSON.stringify(data));
+ }).catch(error => {
+ console.error('unRegisterMissionListener failed, cause: ' + JSON.stringify(error));
+ })
+ } catch (error) {
+ console.error('unRegisterMissionListener failed, cause: ' + JSON.stringify(error))
+ }
```
## distributedMissionManager.startSyncRemoteMissions
@@ -199,13 +221,20 @@ startSyncRemoteMissions(parameter: MissionParameter, callback: AsyncCallback<
```ts
var parameter = {
- deviceId: remoteDeviceId,
+ deviceId: remoteDeviceId,
fixConflict: false,
tag: 0
};
- distributedMissionManager.startSyncRemoteMissions(parameter, (error) => {
- console.log("error.code = " + error.code)
- })
+ try {
+ distributedMissionManager.startSyncRemoteMissions(parameter, (error) => {
+ if (error.code != 0) {
+ console.error('startSyncRemoteMissions failed, cause: ' + JSON.stringify(error))
+ }
+ console.info('startSyncRemoteMissions finished')
+ })
+ } catch (error) {
+ console.error('startSyncRemoteMissions failed, cause: ' + JSON.stringify(error))
+ }
```
## distributedMissionManager.startSyncRemoteMissions
@@ -234,16 +263,20 @@ startSyncRemoteMissions(parameter: MissionParameter): Promise<void>
```ts
var parameter = {
- deviceId: remoteDeviceId,
+ deviceId: remoteDeviceId,
fixConflict: false,
tag: 0
};
- distributedMissionManager.startSyncRemoteMissions(parameter)
- .then(data => {
- console.info('success data is ' + data);
- }).catch(error => {
- console.info('error error is ' + error);
- })
+ try {
+ distributedMissionManager.startSyncRemoteMissions(parameter)
+ .then(data => {
+ console.info('startSyncRemoteMissions finished, ' + JSON.stringify(data));
+ }).catch(error => {
+ console.error('startSyncRemoteMissions failed, cause: ' + JSON.stringify(error));
+ })
+ } catch (error) {
+ console.error('startSyncRemoteMissions failed, cause: ' + JSON.stringify(error))
+ }
```
## distributedMissionManager.stopSyncRemoteMissions
@@ -267,11 +300,18 @@ stopSyncRemoteMissions(parameter: MissionDeviceInfo, callback: AsyncCallback<
```ts
var parameter = {
- deviceId: remoteDeviceId
+ deviceId: remoteDeviceId
};
- distributedMissionManager.stopSyncRemoteMissions(parameter, (error) => {
- console.log("error.code = " + error.code)
- })
+ try {
+ distributedMissionManager.stopSyncRemoteMissions(parameter, (error) => {
+ if (error.code != 0) {
+ console.error('stopSyncRemoteMissions failed, cause: ' + JSON.stringify(error))
+ }
+ console.info('stopSyncRemoteMissions finished')
+ })
+ } catch (error) {
+ console.error('stopSyncRemoteMissions failed, cause: ' + JSON.stringify(error))
+ }
```
## distributedMissionManager.stopSyncRemoteMissions
@@ -300,14 +340,113 @@ stopSyncRemoteMissions(parameter: MissionDeviceInfo): Promise<void>
```ts
var parameter = {
- deviceId: remoteDeviceId
+ deviceId: remoteDeviceId
+ };
+ try {
+ distributedMissionManager.stopSyncRemoteMissions(parameter)
+ .then(data => {
+ console.info('stopSyncRemoteMissions finished, ' + JSON.stringify(data));
+ }).catch(error => {
+ console.error('stopSyncRemoteMissions failed, cause: ' + JSON.stringify(error));
+ })
+ } catch (error) {
+ console.error('stopSyncRemoteMissions failed, cause: ' + JSON.stringify(error))
+ }
+ ```
+
+## distributedMissionManager.continueMission
+
+continueMission(parameter: ContinueDeviceInfo, options: ContinueCallback, callback: AsyncCallback<void>): void;
+
+迁移任务,以回调函数的方式返回。
+
+**需要权限**:ohos.permission.MANAGE_MISSIONS, ohos.permission.DISTRIBUTED_DATASYNC
+
+**系统能力**:SystemCapability.Ability.AbilityRuntime.Mission
+
+**参数:**
+
+| 参数名 | 类型 | 必填 | 说明 |
+| --------- | --------------------------------------- | ---- | ----- |
+| parameter | [ContinueDeviceInfo](#continuedeviceinfo) | 是 | 迁移信息。 |
+| options | [ContinueCallback](#continuecallback) | 是 | 迁移任务完成回调函数。 |
+| callback | AsyncCallback<void> | 是 | 执行结果回调函数。 |
+
+**示例:**
+
+ ```ts
+ var parameter = {
+ srcDeviceId: localDeviceId
+ dstDeviceId: remoteDeviceId
+ missionId: remoteMissionId
+ wantParams: {"key": "value"}
+ };
+ function OnContinueDone(resultCode) {
+ console.log('OnContinueDone resultCode: ' + JSON.stringify(resultCode));
+ };
+ var options = {
+ OnContinueDone: OnContinueDone
+ };
+ try {
+ distributedMissionManager.continueMission(parameter, options, (error) => {
+ if (error.code != 0) {
+ console.error('continueMission failed, cause: ' + JSON.stringify(error))
+ }
+ console.info('continueMission finished')
+ })
+ } catch (error) {
+ console.error('continueMission failed, cause: ' + JSON.stringify(error))
+ }
+ ```
+
+## distributedMissionManager.continueMission
+
+continueMission(parameter: ContinueDeviceInfo, options: ContinueCallback): Promise<void>
+
+迁移任务,以promise方式返回执行结果。
+
+**需要权限**:ohos.permission.MANAGE_MISSIONS, ohos.permission.DISTRIBUTED_DATASYNC
+
+**系统能力**:SystemCapability.Ability.AbilityRuntime.Mission
+
+**参数:**
+
+| 参数名 | 类型 | 必填 | 说明 |
+| --------- | --------------------------------------- | ---- | ----- |
+| parameter | [ContinueDeviceInfo](#continuedeviceinfo) | 是 | 迁移信息。 |
+| options | [ContinueCallback](#continuecallback) | 是 | 迁移任务完成回调函数。 |
+
+**返回值:**
+
+| 类型 | 说明 |
+| ------------------- | ---------------- |
+| Promise<void> | promise方式返回执行结果。 |
+
+**示例:**
+
+ ```ts
+ var parameter = {
+ srcDeviceId: localDeviceId
+ dstDeviceId: remoteDeviceId
+ missionId: remoteMissionId
+ wantParams: {"key": "value"}
+ };
+ function OnContinueDone(resultCode) {
+ console.log('OnContinueDone resultCode: ' + JSON.stringify(resultCode));
+ };
+ var options = {
+ OnContinueDone: OnContinueDone
};
- distributedMissionManager.stopSyncRemoteMissions(parameter)
- .then(data => {
- console.info('success data is ' + data);
- }).catch(error => {
- console.info('error error is ' + error);
- })
+ try {
+ distributedMissionManager.continueMission(parameter, options)
+ .then(data => {
+ console.info('continueMission finished, ' + JSON.stringify(data));
+ }).catch(error => {
+ console.error('continueMission failed, cause: ' + JSON.stringify(error));
+ })
+ } catch (error) {
+ console.error('continueMission failed, cause: ' + JSON.stringify(error))
+ }
```
## MissionCallback
@@ -348,4 +487,31 @@ stopSyncRemoteMissions(parameter: MissionDeviceInfo): Promise<void>
| 名称 | 参数类型 | 可读 | 可写 | 说明 |
| -------- | ------ | ---- | ---- | ------- |
-| deviceId | string | 是 | 是 | 表示设备ID。 |
\ No newline at end of file
+| deviceId | string | 是 | 是 | 表示设备ID。 |
+
+## ContinueDeviceInfo
+
+表示发起任务迁移时所需参数的枚举。
+
+**需要权限**:ohos.permission.MANAGE_MISSIONS
+
+**系统能力**:SystemCapability.Ability.AbilityRuntime.Mission
+
+| 名称 | 参数类型 | 可读 | 可写 | 说明 |
+| -------- | ------ | ---- | ---- | ------- |
+| srcDeviceId | string | 是 | 是 | 表示任务迁移源设备ID。 |
+| dstDeviceId | string | 是 | 是 | 表示任务迁移目标设备ID。 |
+| missionId | string | 是 | 是 | 表示任务ID。 |
+| wantParams | {[key: string]: any} | 是 | 是 | 表示扩展参数。 |
+
+## ContinueCallback
+
+表示迁移完成后,返回迁移结果回调函数。
+
+**需要权限**:ohos.permission.MANAGE_MISSIONS
+
+**系统能力**:SystemCapability.Ability.AbilityRuntime.Mission
+
+| 名称 | 类型 | 可读 | 可写 | 说明 |
+| --------------------- | -------- | ---- | ---- | ------------------ |
+| onContinueDone | function | 是 | 否 | 通知迁移完成,返回迁移结果。 |
\ No newline at end of file
diff --git a/zh-cn/application-dev/reference/apis/js-apis-image.md b/zh-cn/application-dev/reference/apis/js-apis-image.md
index 2190655106537783e0778c784d15f0cf0070bc56..84ec3d0cc56e71f5bddcac1c5dc9cbace6e8ac64 100644
--- a/zh-cn/application-dev/reference/apis/js-apis-image.md
+++ b/zh-cn/application-dev/reference/apis/js-apis-image.md
@@ -1771,7 +1771,7 @@ createImageReceiver(width: number, height: number, format: number, capacity: num
| -------- | ------ | ---- | ---------------------- |
| width | number | 是 | 图像的默认宽度。 |
| height | number | 是 | 图像的默认高度。 |
-| format | number | 是 | 图像格式。 |
+| format | number | 是 | 图像格式,取值为[ImageFormat](#imageformat9)常量。 |
| capacity | number | 是 | 同时访问的最大图像数。 |
**返回值:**
@@ -1952,7 +1952,7 @@ receiver.readNextImage().then(img => {
})
```
-### on('imageArrival')9+
+### on9+
on(type: 'imageArrival', callback: AsyncCallback\): void
@@ -2017,6 +2017,228 @@ receiver.release().then(() => {
})
```
+## image.createImageCreator9+
+
+createImageCreator(width: number, height: number, format: number, capacity: number): ImageCreator
+
+通过宽、高、图片格式、容量创建ImageCreator实例。
+
+**系统能力:** SystemCapability.Multimedia.Image.ImageCreator
+
+**参数:**
+
+| 名称 | 类型 | 必填 | 说明 |
+| -------- | ------ | ---- | ---------------------- |
+| width | number | 是 | 图像的默认宽度。 |
+| height | number | 是 | 图像的默认高度。 |
+| format | number | 是 | 图像格式,如YCBCR_422_SP,JPEG。 |
+| capacity | number | 是 | 同时访问的最大图像数。 |
+
+**返回值:**
+
+| 类型 | 说明 |
+| ------------------------------ | --------------------------------------- |
+| [ImageCreator](#imagecreator9) | 如果操作成功,则返回ImageCreator实例。 |
+
+**示例:**
+
+```js
+var creator = image.createImageCreator(8192, 8, 4, 8);
+```
+
+## ImageCreator9+
+
+图像创建模块,用于请求图像原生数据区域,并开放给应用编译原生图像数据的能力。
+在调用以下方法前需要先创建ImageCreator实例。
+
+### 属性
+
+**系统能力:** SystemCapability.Multimedia.Image.ImageCreator
+
+| 名称 | 类型 | 可读 | 可写 | 说明 |
+| -------- | ---------------------------- | ---- | ---- | ------------------ |
+| capacity | number | 是 | 否 | 同时访问的图像数。 |
+| format | [ImageFormat](#imageformat9) | 是 | 否 | 图像格式。 |
+
+### dequeueImage9+
+
+dequeueImage(callback: AsyncCallback\): void
+
+从空闲队列中获取buffer图片,用于绘制UI内容,并使用callback返回结果。
+
+**系统能力:** SystemCapability.Multimedia.Image.ImageCreator
+
+**参数:**
+
+| 名称 | 类型 | 必填 | 说明 |
+| ------------- | ---------------------------------------| ---- | -------------------- |
+| callback | AsyncCallback\ | 是 | 回调函数,返回最新图片。 |
+
+**示例:**
+
+```js
+creator.dequeueImage((err, img) => {
+ if (err) {
+ console.info('dequeueImage succeeded.');
+ }
+ console.info('dequeueImage failed.'));
+});
+```
+
+### dequeueImage9+
+
+dequeueImage(): Promise\
+
+从空闲队列中获取buffer图片,用于绘制UI内容,并使用promise返回结果。
+
+**系统能力:** SystemCapability.Multimedia.Image.ImageCreator
+
+**返回值:**
+
+| 类型 | 说明 |
+| --------------- | ------------- |
+| Promise\ | 返回绘制的图像。 |
+
+**示例:**
+
+```js
+creator.dequeueImage().then(img => {
+ console.info('dequeueImage succeeded.');
+}).catch(error => {
+ console.log('dequeueImage failed: ' + error);
+})
+```
+
+### queueImage9+
+
+queueImage(interface: Image, callback: AsyncCallback\): void
+
+将绘制好的图片放入Dirty队列,并使用callback返回结果。
+
+**系统能力:** SystemCapability.Multimedia.Image.ImageCreator
+
+**参数:**
+
+| 名称 | 类型 | 必填 | 说明 |
+| ------------- | -------------------------| ---- | -------------------- |
+| interface | Image | 是 | 绘制好的buffer图像。 |
+| callback | AsyncCallback\ | 是 | 获取回调,失败时返回错误信息。 |
+
+**示例:**
+
+```js
+creator.queueImage(img, (err) => {
+ if (err) {
+ console.info('dequeueImage failed: ' + err);
+ }
+ console.info('dequeueImage succeeded');
+})
+```
+
+### queueImage9+
+
+queueImage(interface: Image): Promise\
+
+将绘制好的图片放入Dirty队列,并使用promise返回结果。
+
+**系统能力:** SystemCapability.Multimedia.Image.ImageCreator
+
+**参数:**
+
+| 名称 | 类型 | 必填 | 说明 |
+| ------------- | --------| ---- | ------------------- |
+| interface | Image | 是 | 绘制好的buffer图像。 |
+
+**返回值:**
+
+| 类型 | 说明 |
+| -------------- | ------------- |
+| Promise\ | 获取回调,失败时返回错误信息。 |
+
+**示例:**
+
+```js
+creator.queueImage(img).then(() => {
+ console.info('dequeueImage succeeded.');
+}).catch(error => {
+ console.info('dequeueImage failed: ' + error);
+})
+```
+
+### on9+
+
+on(type: 'imageRelease', callback: AsyncCallback\): void
+
+监听imageRelease事件,并使用callback返回结果。
+
+**系统能力:** SystemCapability.Multimedia.Image.ImageCreator
+
+**参数:**
+
+| 名称 | 类型 | 必填 | 说明 |
+| ------------- | -------------------------| ---- | -------------------- |
+| type | string | 是 | 监听事件类型,如'imageRelease'。 |
+| callback | AsyncCallback\ | 是 | 获取回调,失败时返回错误信息。 |
+
+**示例:**
+
+```js
+creator.on('imageRelease', (err) => {
+ if (err) {
+ console.info('on faild' + err);
+ }
+ console.info('on succeeded');
+})
+```
+
+### release9+
+
+release(callback: AsyncCallback\): void
+
+释放当前图像,并使用callback返回结果。
+
+**系统能力:** SystemCapability.Multimedia.Image.ImageCreator
+
+**参数:**
+
+| 名称 | 类型 | 必填 | 说明 |
+| ------------- | -------------------------| ---- | -------------------- |
+| callback | AsyncCallback\ | 是 | 获取回调,失败时返回错误信息。 |
+
+**示例:**
+
+```js
+creator.release((err) => {
+ if (err) {
+ console.info('release failed: ' + err);
+ }
+ console.info('release succeeded');
+});
+```
+### release9+
+
+release(): Promise\
+
+释放当前图像,并使用promise返回结果。
+
+**系统能力:** SystemCapability.Multimedia.Image.ImageCreator
+
+**返回值:**
+
+| 类型 | 说明 |
+| -------------- | ------------- |
+| Promise\ | 获取回调,失败时返回错误信息。 |
+
+**示例:**
+
+```js
+creator.release().then(() => {
+ console.info('release succeeded');
+}).catch(error => {
+ console.info('release failed');
+})
+```
+
## Image9+
提供基本的图像操作,包括获取图像信息、读写图像数据。调用[readNextImage](#readnextimage9)和[readLatestImage](#readlatestimage9)接口时会返回image。
@@ -2144,7 +2366,7 @@ img.release().then(() =>{
| ------ | ------------------ | ---- | ---- | ------------------------------------------------------------ |
| pixels | ArrayBuffer | 是 | 否 | 像素。 |
| offset | number | 是 | 否 | 偏移量。 |
-| stride | number | 是 | 否 | 像素间距,stride >= region.size.width*4 |
+| stride | number | 是 | 否 | 像素间距,stride >= region.size.width*4。 |
| region | [Region](#region7) | 是 | 否 | 区域,按照区域读写。写入的区域宽度加X坐标不能大于原图的宽度,写入的区域高度加Y坐标不能大于原图的高度。 |
## ImageInfo
@@ -2156,6 +2378,7 @@ img.release().then(() =>{
| 名称 | 类型 | 可读 | 可写 | 说明 |
| ---- | ------------- | ---- | ---- | ---------- |
| size | [Size](#size) | 是 | 是 | 图片大小。 |
+| density9+ | number | 是 | 是 | 像素密度,单位为ppi。 |
## Size
@@ -2178,8 +2401,13 @@ img.release().then(() =>{
| ---------------------- | ------ | ----------------- |
| UNKNOWN | 0 | 未知格式。 |
| RGB_565 | 2 | 格式为RGB_565 |
-| RGBA_8888 | 3 | 格式为RGBA_8888 |
-| BGRA_88889+ | 4 | 格式为BGRA_8888 |
+| RGBA_8888 | 3 | 格式为RGBA_8888 |
+| BGRA_88889+ | 4 | 格式为BGRA_8888 |
+| RGB_8889+ | 5 | 格式为RGB_888 |
+| ALPHA_89+ | 6 | 格式为ALPHA_8 |
+| RGBA_F169+ | 7 | 格式为RGBA_F16 |
+| NV219+ | 8 | 格式为NV21 |
+| NV129+ | 9 | 格式为NV12 |
## AlphaType9+
@@ -2191,8 +2419,8 @@ img.release().then(() =>{
| -------- | ------ | ----------------------- |
| UNKNOWN | 0 | 未知透明度。 |
| OPAQUE | 1 | 没有alpha或图片全透明。 |
-| PREMUL | 2 | RGB前乘alpha |
-| UNPREMUL | 3 | RGB不前乘alpha |
+| PREMUL | 2 | RGB前乘alpha。 |
+| UNPREMUL | 3 | RGB不前乘alpha。 |
## ScaleMode9+
@@ -2247,6 +2475,7 @@ PixelMap的初始化选项。
| desiredRegion | [Region](#region7) | 是 | 是 | 解码区域。 |
| desiredPixelFormat | [PixelMapFormat](#pixelmapformat7) | 是 | 是 | 解码的像素格式。 |
| index | number | 是 | 是 | 解码图片序号。 |
+| fitDensity9+ | number | 是 | 是 | 图像像素密度,单位为ppi。 |
## Region7+
@@ -2268,8 +2497,9 @@ PixelMap的初始化选项。
| 名称 | 类型 | 可读 | 可写 | 说明 |
| ------- | ------ | ---- | ---- | --------------------------------------------------- |
-| format | string | 是 | 是 | 目标格式。当前支持格式有:jpeg webp |
-| quality | number | 是 | 是 | JPEG编码中设定输出图片质量的参数,取值范围为1-100 |
+| format | string | 是 | 是 | 目标格式。当前支持格式有:.jpg .png .gif .bmp .webp RAW。 |
+| quality | number | 是 | 是 | JPEG编码中设定输出图片质量的参数,取值范围为1-100。 |
+| bufferSize9+ | number | 是 | 是 | 用于设置图片大小,默认为10M |
## GetImagePropertyOptions7+
@@ -2296,8 +2526,14 @@ PixelMap的初始化选项。
| IMAGE_WIDTH | "ImageWidth" | 图片宽度。 |
| GPS_LATITUDE | "GPSLatitude" | 图片纬度。 |
| GPS_LONGITUDE | "GPSLongitude" | 图片经度。 |
-| GPS_LATITUDE_REF | "GPSLatitudeRef" | 纬度引用,例如N或S。 |
-| GPS_LONGITUDE_REF | "GPSLongitudeRef" | 经度引用,例如W或E。 |
+| GPS_LATITUDE_REF | "GPSLatitudeRef" | 纬度引用,例如N或S。 |
+| GPS_LONGITUDE_REF | "GPSLongitudeRef" | 经度引用,例如W或E。 |
+| DATE_TIME_ORIGINAL9+ | "DateTimeOriginal" | 拍摄时间,例如2022:09:06 15:48:00 |
+| EXPOSURE_TIME9+ | "ExposureTime" | 曝光时间,例如1/33 sec.|
+| SCENE_TYPE9+ | "SceneType" | 拍摄场景模式,例如人像、风光、运动、夜景等。 |
+| ISO_SPEED_RATINGS9+ | "ISOSpeedRatings" | ISO感光度,例如400 |
+| F_NUMBER9+ | "FNumber" | 光圈值,例如f/1.8 |
+
## ImageFormat9+
diff --git a/zh-cn/application-dev/reference/apis/js-apis-privacyManager.md b/zh-cn/application-dev/reference/apis/js-apis-privacyManager.md
index 74df7ef2c393aedcbfff767a64fee10d05d7c07e..eb9615b1b4a6aeb117ebddd843efd605b5e179c1 100644
--- a/zh-cn/application-dev/reference/apis/js-apis-privacyManager.md
+++ b/zh-cn/application-dev/reference/apis/js-apis-privacyManager.md
@@ -15,7 +15,7 @@ import privacyManager from '@ohos.privacyManager';
## privacyManager.addPermissionUsedRecord
-addPermissionUsedRecord(tokenID: number, permissionName: string, successCount: number, failCount: number): Promise<number>
+addPermissionUsedRecord(tokenID: number, permissionName: string, successCount: number, failCount: number): Promise<void>
受应用权限保护的应用在被其他服务、应用调用时,可以使用该接口增加一条权限使用记录。使用Promise异步回调。
权限使用记录包括:调用方的应用身份标识、使用的应用权限名称,和其访问本应用成功、失败的次数。
@@ -28,7 +28,7 @@ addPermissionUsedRecord(tokenID: number, permissionName: string, successCount: n
| 参数名 | 类型 | 必填 | 说明 |
| -------- | ------------------- | ---- | ------------------------------------------ |
-| tokenID | number | 是 | 调用方的应用身份标识。 |
+| tokenID | number | 是 | 调用方的应用身份标识。可通过应用的[ApplicationInfo](js-apis-bundle-ApplicationInfo.md)获得。 |
| permissionName | string | 是 | 应用权限名称。 |
| successCount | number | 是 | 访问成功的次数。 |
| failCount | number | 是 | 访问失败的次数。 |
@@ -37,27 +37,28 @@ addPermissionUsedRecord(tokenID: number, permissionName: string, successCount: n
| 类型 | 说明 |
| :------------ | :---------------------------------- |
-| Promise<number> | Promise对象。返回`0`表示成功增加记录,返回`-1`表示失败。 |
+| Promise<void> | Promise对象。无返回结果的Promise对象。 |
**示例:**
```js
-import bundle from '@ohos.bundle';
import privacyManager from '@ohos.privacyManager';
-let bundleName = "com.ohos.permissionmanager"; // change to your bundle name
-bundle.getApplicationInfo(bundleName, 16).then(appInfo => {
- var tokenID = appInfo.accessTokenId; // 可以通过getApplicationInfo获取accessTokenId
- privacyManager.addPermissionUsedRecord(tokenID, "ohos.permission.PERMISSION_USED_STATS", 1, 0).then(data => {
- console.log(`promise: data->${JSON.stringify(data)}`);
+let tokenID = 0; // 可以通过getApplicationInfo获取accessTokenId
+try {
+ privacyManager.addPermissionUsedRecord(tokenID, "ohos.permission.PERMISSION_USED_STATS", 1, 0).then(() => {
+ console.log('addPermissionUsedRecord success');
+ }).catch((err) => {
+ console.log(`addPermissionUsedRecord fail, err->${JSON.stringify(err)}`);
});
-})
-
+} catch(err) {
+ console.log(`catch err->${JSON.stringify(err)}`);
+}
```
## privacyManager.addPermissionUsedRecord
-addPermissionUsedRecord(tokenID: number, permissionName: string, successCount: number, failCount: number, callback: AsyncCallback<number>): void
+addPermissionUsedRecord(tokenID: number, permissionName: string, successCount: number, failCount: number, callback: AsyncCallback<void>): void
受应用权限保护的应用在被其他服务、应用调用时,可以使用该接口增加一条权限使用记录。使用callback异步回调。
权限使用记录包括:调用方的应用身份标识、使用的应用权限名称,和其访问本应用成功、失败的次数。
@@ -70,26 +71,29 @@ addPermissionUsedRecord(tokenID: number, permissionName: string, successCount: n
| 参数名 | 类型 | 必填 | 说明 |
| -------- | ------------------- | ---- | ------------------------------------------ |
-| tokenID | number | 是 | 调用方的应用身份标识。 |
+| tokenID | number | 是 | 调用方的应用身份标识。可通过应用的[ApplicationInfo](js-apis-bundle-ApplicationInfo.md)获得。 |
| permissionName | string | 是 | 应用权限名称。 |
| successCount | number | 是 | 访问成功的次数。 |
| failCount | number | 是 | 访问失败的次数。 |
-| callback | AsyncCallback<number> | 是 | 回调函数。返回`0`表示成功增加记录,返回`-1`表示失败。 |
+| callback | AsyncCallback<void> | 是 | 回调函数。 |
**示例:**
```js
-import bundle from '@ohos.bundle';
import privacyManager from '@ohos.privacyManager';
-let bundleName = "com.ohos.permissionmanager"; // change to your bundle name
-bundle.getApplicationInfo(bundleName, 16).then(appInfo => {
- var tokenID = appInfo.accessTokenId; // 可以通过getApplicationInfo获取accessTokenId
- privacyManager.addPermissionUsedRecord(tokenID, "ohos.permission.PERMISSION_USED_STATS", 1, 0, (err, data) => {
- console.log(`callback: data->${JSON.stringify(data)}`);
+let tokenID = 0; // 可以通过getApplicationInfo获取accessTokenId
+try {
+ privacyManager.addPermissionUsedRecord(tokenID, "ohos.permission.PERMISSION_USED_STATS", 1, 0, (data, err) => {
+ if (err) {
+ console.log(`addPermissionUsedRecord fail, err->${JSON.stringify(err)}`);
+ } else {
+ console.log('addPermissionUsedRecord success');
+ }
});
-})
-
+} catch(err) {
+ console.log(`catch err->${JSON.stringify(err)}`);
+}
```
## privacyManager.getPermissionUsedRecords
@@ -117,6 +121,8 @@ getPermissionUsedRecords(request: PermissionUsedRequest): Promise<PermissionU
**示例:**
```js
+import privacyManager from '@ohos.privacyManager';
+
let request = {
"tokenId": 1,
"isRemote": false,
@@ -127,9 +133,15 @@ let request = {
"endTime": 1,
"flag":privacyManager.PermissionUsageFlag.FLAG_PERMISSION_USAGE_DETAIL,
};
-privacyManager.getPermissionUsedRecords(request).then(data => {
- console.log(`promise: data->${JSON.stringify(data)}`);
-});
+try {
+ privacyManager.getPermissionUsedRecords(request).then((data) => {
+ console.log(`getPermissionUsedRecords success, data->${JSON.stringify(data)}`);
+ }).catch((err) => {
+ console.log(`getPermissionUsedRecords fail, err->${JSON.stringify(err)}`);
+ });
+} catch(err) {
+ console.log(`catch err->${JSON.stringify(err)}`);
+}
```
## privacyManager.getPermissionUsedRecords
@@ -152,6 +164,8 @@ getPermissionUsedRecords(request: PermissionUsedRequest, callback: AsyncCallback
**示例:**
```js
+import privacyManager from '@ohos.privacyManager';
+
let request = {
"tokenId": 1,
"isRemote": false,
@@ -162,14 +176,22 @@ let request = {
"endTime": 1,
"flag":privacyManager.PermissionUsageFlag.FLAG_PERMISSION_USAGE_DETAIL,
};
-privacyManager.getPermissionUsedRecords(request, (err, data) => {
- console.log(`promise: data->${JSON.stringify(data)}`);
-});
+try {
+ privacyManager.getPermissionUsedRecords(request, (err, data) => {
+ if (err) {
+ console.log(`getPermissionUsedRecords fail, err->${JSON.stringify(err)}`);
+ } else {
+ console.log(`getPermissionUsedRecords success, data->${JSON.stringify(data)}`);
+ }
+ });
+} catch(err) {
+ console.log(`catch err->${JSON.stringify(err)}`);
+}
```
-## privacyManager.startUsingPermission9+
+## privacyManager.startUsingPermission
-startUsingPermission(tokenID: number, permissionName: string): Promise<number>
+startUsingPermission(tokenID: number, permissionName: string): Promise<void>
应用开始使用某项权限,可监听应用在前后台使用权限,并将使用权限的记录落盘,由系统服务调用。
@@ -181,37 +203,35 @@ startUsingPermission(tokenID: number, permissionName: string): Promise<number
| 参数名 | 类型 | 必填 | 说明 |
| -------------- | ------ | ---- | ------------------------------------ |
-| tokenID | number | 是 | 调用方的应用身份标识,获取方法参照示例。 |
+| tokenID | number | 是 | 调用方的应用身份标识。可通过应用的[ApplicationInfo](js-apis-bundle-ApplicationInfo.md)获得。 |
| permissionName | string | 是 | 需要使用的权限名。 |
**返回值:**
| 类型 | 说明 |
| ------------- | --------------------------------------- |
-| Promise<number> | Promise对象。返回开始使用权限的结果。|
+| Promise<void> | Promise对象。无返回结果的Promise对象。|
**示例:**
```js
-import bundle from '@ohos.bundle';
import privacyManager from '@ohos.privacyManager';
-let bundleName = "com.ohos.permissionmanager"; // change to your bundle name
-bundle.getApplicationInfo(bundleName, 16).then(appInfo => {
- let tokenID = appInfo.accessTokenId;
- let permissionName = "ohos.permission.CAMERA";
- privacyManager.startUsingPermission(tokenID, permissionName).then(data => {
- console.log(`promise: data->${JSON.stringify(data)}`);
- }).catch(err => {
- console.log(`Error: err->${JSON.stringify(err)}`);
+let tokenID = 0; // 可以通过getApplicationInfo获取accessTokenId
+try {
+ privacyManager.startUsingPermission(tokenID, "ohos.permission.PERMISSION_USED_STATS").then(() => {
+ console.log('startUsingPermission success');
+ }).catch((err) => {
+ console.log(`startUsingPermission fail, err->${JSON.stringify(err)}`);
});
-})
-
+} catch(err) {
+ console.log(`catch err->${JSON.stringify(err)}`);
+}
```
-## privacyManager.startUsingPermission9+
+## privacyManager.startUsingPermission
-startUsingPermission(tokenID: number, permissionName: string, callback: AsyncCallback<number>): void
+startUsingPermission(tokenID: number, permissionName: string, callback: AsyncCallback<void>): void
应用开始使用某项权限,可监听应用在前后台使用权限,并将使用权限的记录落盘,由系统服务调用。
@@ -223,34 +243,32 @@ startUsingPermission(tokenID: number, permissionName: string, callback: AsyncCal
| 参数名 | 类型 | 必填 | 说明 |
| -------------- | --------------------- | ---- | ------------------------------------ |
-| tokenID | number | 是 | 调用方的应用身份标识,获取方法参照示例。 |
+| tokenID | number | 是 | 调用方的应用身份标识。可通过应用的[ApplicationInfo](js-apis-bundle-ApplicationInfo.md)获得。 |
| permissionName | string | 是 | 需要使用的权限名。 |
-| callback | AsyncCallback<number> | 是 | 异步回调,返回开始使用权限的结果。 |
+| callback | AsyncCallback<void> | 是 | 异步回调,返回开始使用权限的结果。 |
**示例:**
```js
-import bundle from '@ohos.bundle';
import privacyManager from '@ohos.privacyManager';
-let bundleName = "com.ohos.permissionmanager"; // change to your bundle name
-bundle.getApplicationInfo(bundleName, 16).then(appInfo => {
- let tokenID = appInfo.accessTokenId;
- let permissionName = "ohos.permission.CAMERA";
- privacyManager.startUsingPermission(tokenID, permissionName, (err, data)=> {
+let tokenID = 0; // 可以通过getApplicationInfo获取accessTokenId
+try {
+ privacyManager.startUsingPermission(tokenID, "ohos.permission.PERMISSION_USED_STATS", (data, err) => {
if (err) {
- console.log(`Error: err->${JSON.stringify(err)}`);
- } else {S
- console.log(`promise: data->${JSON.stringify(data)}`);
+ console.log(`startUsingPermission fail, err->${JSON.stringify(err)}`);
+ } else {
+ console.log('startUsingPermission success');
}
});
-})
-
+} catch(err) {
+ console.log(`catch err->${JSON.stringify(err)}`);
+}
```
-## privacyManager.stopUsingPermission9+
+## privacyManager.stopUsingPermission
-stopUsingPermission(tokenID: number, permissionName: string): Promise<number>
+stopUsingPermission(tokenID: number, permissionName: string): Promise<void>
应用停止使用某项权限,与Start对应,由系统服务调用。
@@ -262,37 +280,35 @@ stopUsingPermission(tokenID: number, permissionName: string): Promise<number&
| 参数名 | 类型 | 必填 | 说明 |
| -------------- | ------ | ---- | ------------------------------------ |
-| tokenID | number | 是 | 调用方的应用身份标识,获取方法参照示例。 |
+| tokenID | number | 是 | 调用方的应用身份标识。可通过应用的[ApplicationInfo](js-apis-bundle-ApplicationInfo.md)获得。 |
| permissionName | string | 是 | 需要使用的权限名。 |
**返回值:**
| 类型 | 说明 |
| ------------- | --------------------------------------- |
-| Promise<number> | Promise对象。返回停止使用权限的结果。|
+| Promise<void> | Promise对象。无返回结果的Promise对象。|
**示例:**
```js
-import bundle from '@ohos.bundle';
import privacyManager from '@ohos.privacyManager';
-let bundleName = "com.ohos.permissionmanager"; // change to your bundle name
-bundle.getApplicationInfo(bundleName, 16).then(appInfo => {
- let tokenID = appInfo.accessTokenId;
- let permissionName = "ohos.permission.CAMERA";
- privacyManager.stopUsingPermission(tokenID, permissionName).then(data => {
- console.log(`promise: data->${JSON.stringify(data)}`);
- }).catch(err => {
- console.log(`Error: err->${JSON.stringify(err)}`);
+let tokenID = 0; // 可以通过getApplicationInfo获取accessTokenId
+try {
+ privacyManager.stopUsingPermission(tokenID, "ohos.permission.PERMISSION_USED_STATS").then(() => {
+ console.log('stopUsingPermission success');
+ }).catch((err) => {
+ console.log(`stopUsingPermission fail, err->${JSON.stringify(err)}`);
});
-})
-
+} catch(err) {
+ console.log(`catch err->${JSON.stringify(err)}`);
+}
```
-## privacyManager.stopUsingPermission9+
+## privacyManager.stopUsingPermission
-stopUsingPermission(tokenID: number, permissionName: string, callback: AsyncCallback<number>): void
+stopUsingPermission(tokenID: number, permissionName: string, callback: AsyncCallback<void>): void
应用停止使用某项权限,与Start对应,由系统服务调用。
@@ -304,32 +320,30 @@ stopUsingPermission(tokenID: number, permissionName: string, callback: AsyncCall
| 参数名 | 类型 | 必填 | 说明 |
| -------------- | --------------------- | ---- | ------------------------------------ |
-| tokenID | number | 是 | 调用方的应用身份标识,获取方法参照示例。 |
+| tokenID | number | 是 | 调用方的应用身份标识。可通过应用的[ApplicationInfo](js-apis-bundle-ApplicationInfo.md)获得。 |
| permissionName | string | 是 | 需要使用的权限名。 |
-| callback | AsyncCallback<number> | 是 | 异步回调,返回停止使用权限的结果。 |
+| callback | AsyncCallback<void> | 是 | 异步回调,返回停止使用权限的结果。 |
**示例:**
```js
-import bundle from '@ohos.bundle';
import privacyManager from '@ohos.privacyManager';
-let bundleName = "com.ohos.permissionmanager"; // change to your bundle name
-bundle.getApplicationInfo(bundleName, 16).then(appInfo => {
- let tokenID = appInfo.accessTokenId;
- let permissionName = "ohos.permission.CAMERA";
- privacyManager.stopUsingPermission(tokenID, permissionName, (err, data)=> {
+let tokenID = 0; // 可以通过getApplicationInfo获取accessTokenId
+try {
+ privacyManager.stopUsingPermission(tokenID, "ohos.permission.PERMISSION_USED_STATS", (data, err) => {
if (err) {
- console.log(`Error: err->${JSON.stringify(err)}`);
+ console.log(`stopUsingPermission fail, err->${JSON.stringify(err)}`);
} else {
- console.log(`promise: data->${JSON.stringify(data)}`);
+ console.log('stopUsingPermission success');
}
});
-})
-
+} catch(err) {
+ console.log(`catch err->${JSON.stringify(err)}`);
+}
```
-## privacyManager.on9+
+## privacyManager.on
on(type: 'activeStateChange', permissionNameList: Array<string>, callback: Callback<ActiveChangeResponse>): void
@@ -347,27 +361,24 @@ on(type: 'activeStateChange', permissionNameList: Array<string>, callback:
| ------------------ | --------------------- | ---- | ------------------------------------------------------------ |
| type | string | 是 | 订阅事件类型,固定为'activeStateChange',权限使用状态变更事件。 |
| permissionNameList | Array<string> | 否 | 订阅的权限名列表,为空时表示订阅所有的权限使用状态变化。 |
-| callback | Callback<[ActiveChangeResponse](#activechangeresponse9)> | 是 | 订阅指定权限使用状态变更事件的回调。 |
+| callback | Callback<[ActiveChangeResponse](#activechangeresponse)> | 是 | 订阅指定权限使用状态变更事件的回调。 |
**示例:**
```js
import privacyManager from '@ohos.privacyManager';
-function OnPermissionUseStateChanged(data){
- console.debug("receive permission state change, data:" + JSON.stringify(data));
-}
-let type: 'activeStateChange' = 'activeStateChange';
let permissionNameList: Array = [];
-try{
- privacyManager.on(type, permissionNameList, OnPermissionUseStateChanged);
-}
-catch(err){
- console.error("on err:" + JSON.stringify(err));
+try {
+ atManager.on('activeStateChange', permissionNameList, (data) => {
+ console.debug("receive permission state change, data:" + JSON.stringify(data));
+ });
+} catch(err) {
+ console.log(`catch err->${JSON.stringify(err)}`);
}
```
-## privacyManager.off9+
+## privacyManager.off
off(type: 'activeStateChange', permissionNameList: Array<string>, callback?: Callback<ActiveChangeResponse>): void;
@@ -385,20 +396,18 @@ off(type: 'activeStateChange', permissionNameList: Array<string>, callback
| ------------------ | --------------------- | ---- | ------------------------------------------------------------ |
| type | string | 是 | 订阅事件类型,固定为'activeStateChange',权限使用状态变更事件。 |
| permissionNameList | Array<string> | 否 | 订阅的权限名列表,为空时表示订阅所有的权限状态变化,必须与on的输入一致。 |
-| callback | Callback<[ActiveChangeResponse](#activechangeresponse9)> | 否 | 取消订阅指定tokenId与指定权限名状态变更事件的回调。|
+| callback | Callback<[ActiveChangeResponse](#activechangeresponse)> | 否 | 取消订阅指定tokenId与指定权限名状态变更事件的回调。|
**示例:**
```js
import privacyManager from '@ohos.privacyManager';
-let type: 'activeStateChange' = 'activeStateChange';
let permissionNameList: Array = [];
-try{
- privacyManager.off(type, permissionNameList);
-}
-catch(err){
- console.error("off err:" + JSON.stringify(err));
+try {
+ privacyManager.off('activeStateChange', permissionNameList);
+}catch(err) {
+ console.log(`catch err->${JSON.stringify(err)}`);
}
```
@@ -485,7 +494,7 @@ catch(err){
| timestamp | number | 否 | 访问时的时间戳,单位:ms。 |
| accessDuration | number | 否 | 访问时长,单位:ms。 |
-## PermissionActiveStatus9+
+## PermissionActiveStatus
表示权限使用状态类型的枚举。
@@ -497,7 +506,7 @@ catch(err){
| PERM_ACTIVE_IN_FOREGROUND | 1 | 表示前台使用权限。 |
| PERM_ACTIVE_IN_BACKGROUND | 2 | 表示后台使用权限。 |
-## ActiveChangeResponse9+
+## ActiveChangeResponse
**系统能力:** 以下各项对应的系统能力均为SystemCapability.Security.AccessToken
@@ -506,4 +515,4 @@ catch(err){
| tokenId | number | 是 | 否 | 调用方的应用身份标识 |
| permissionName | string | 是 | 否 | 使用状态发生变化的权限名 |
| deviceId | string | 是 | 否 | 设备号 |
-| activeStatus | [PermissionActiveStatus](#permissionactivestatus9) | 是 | 否 | 权限使用状态类型 |
+| activeStatus | [PermissionActiveStatus](#permissionactivestatus) | 是 | 否 | 权限使用状态类型 |
diff --git a/zh-cn/application-dev/reference/apis/js-apis-request.md b/zh-cn/application-dev/reference/apis/js-apis-request.md
index cfb5c0c75a9058ae41d3e1f613d19ecbebfe2322..1ba8a552f29850c589f0f192910fd6e7bb740ee7 100644
--- a/zh-cn/application-dev/reference/apis/js-apis-request.md
+++ b/zh-cn/application-dev/reference/apis/js-apis-request.md
@@ -1206,7 +1206,7 @@ resume(callback: AsyncCallback<void>): void
| 名称 | 类型 | 必填 | 说明 |
| -------- | -------- | -------- | -------- |
| url | string | 是 | 资源地址。 |
-| header | object | 否 | 添加要包含在下载请求中的HTTP或HTTPS标志头。 |
+| header | object | 否 | 添加要包含在下载请求中的HTTPS标志头。 开发者可以通过header的X-TLS-Version参数指定需要使用的TLS版本(如果不指定,则默认使用CURL_SSLVERSION_TLSv1_2版本,指定则使用指定版本。) CURL_SSLVERSION_TLSv1_0 CURL_SSLVERSION_TLSv1_1 CURL_SSLVERSION_TLSv1_2 CURL_SSLVERSION_TLSv1_3 通过header的X-Cipher-List参数指定需要使用的密码套件(如果不指定,则默认使用安全密码套件,指定则使用指定密码套件。) -1.2允许使用的密码套件白名单: TLS_DHE_RSA_WITH_AES_128_GCM_SHA256,TLS_DHE_RSA_WITH_AES_256_GCM_SHA384, TLS_DHE_DSS_WITH_AES_128_GCM_SHA256,TLS_DSS_RSA_WITH_AES_256_GCM_SHA384, TLS_PSK_WITH_AES_256_GCM_SHA384,TLS_DHE_PSK_WITH_AES_128_GCM_SHA256, TLS_DHE_PSK_WITH_AES_256_GCM_SHA384,TLS_DHE_PSK_WITH_CHACHA20_POLY1305_SHA256, TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256,TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384, TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256,TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384, TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305_SHA256,TLS_ECDHE_PSK_WITH_CHACHA20_POLY1305_SHA256, TLS_ECDHE_PSK_WITH_AES_128_GCM_SHA256,TLS_ECDHE_PSK_WITH_AES_256_GCM_SHA384, TLS_ECDHE_PSK_WITH_AES_128_GCM_SHA256,TLS_DHE_RSA_WITH_AES_128_CCM, TLS_DHE_RSA_WITH_AES_256_CCM,TLS_DHE_RSA_WITH_CHACHA20_POLY1305_SHA256, TLS_PSK_WITH_AES_256_CCM,TLS_DHE_PSK_WITH_AES_128_CCM, TLS_DHE_PSK_WITH_AES_256_CCM,TLS_ECDHE_ECDSA_WITH_AES_128_CCM, TLS_ECDHE_ECDSA_WITH_AES_256_CCM,TLS_ECDHE_ECDSA_WITH_CHACHA20_POLY1305_SHA256 -1.3允许使用的密码套件白名单: TLS_AES_128_GCM_SHA256,TLS_AES_256_GCM_SHA384,TLS_CHACHA20_POLY1305_SHA256,TLS_AES_128_CCM_SHA256 -1.3新增国密算法套: TLS_SM4_GCM_SM3,TLS_SM4_CCM_SM3 |
| enableMetered | boolean | 否 | 设置是否允许在按流量计费的连接下下载。 - true:是 - false:否 |
| enableRoaming | boolean | 否 | 设置是否允许在漫游网络中下载。 - true:是 - false:否|
| description | string | 否 | 设置下载会话的描述。 |
diff --git a/zh-cn/application-dev/reference/apis/js-apis-sensor.md b/zh-cn/application-dev/reference/apis/js-apis-sensor.md
index aabf35833b0c56d5771279c55ec0ea9b9ab2f192..d03122b4a2d56f22ff57f9e5de0f13e99327cff5 100644
--- a/zh-cn/application-dev/reference/apis/js-apis-sensor.md
+++ b/zh-cn/application-dev/reference/apis/js-apis-sensor.md
@@ -21,2830 +21,5568 @@ sensor模块提供订阅传感器数据基本能力,包括订阅、取消订
import sensor from '@ohos.sensor';
```
-## sensor.on
+## sensor.on9+
-### ACCELEROMETER
+### ACCELEROMETER9+
-on(type: SensorType.SENSOR_TYPE_ID_ACCELEROMETER, callback: Callback<AccelerometerResponse>,options?: Options): void
+on(type: SensorId.ACCELEROMETER, callback: Callback<AccelerometerResponse>,options?: Options): void
-监听加速度传感器的数据变化。如果多次调用该接口,仅最后一次调用生效。
+订阅加速度计传感器数据。
-**需要权限**:ohos.permission.ACCELEROMETER
+**需要权限**:ohos.permission.ACCELEROMETER
**系统能力**:SystemCapability.Sensors.Sensor
**参数:**
-| 参数名 | 类型 | 必填 | 说明 |
-| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
-| type | [SensorType](#sensortype) | 是 | 要订阅的加速度传感器类型为SENSOR_TYPE_ID_ACCELEROMETER。 |
-| callback | Callback<[AccelerometerResponse](#accelerometerresponse)> | 是 | 注册加速度传感器的回调函数,上报的数据类型为AccelerometerResponse。 |
-| options | [Options](#options) | 否 | 可选参数列表,设置上报频率,默认值为200000000ns。 |
+| 参数名 | 类型 | 必填 | 说明 |
+| -------- | ------------------------------------------------------------ | ---- | ------------------------------------------------------------ |
+| type | [SensorId](#sensorid9) | 是 | 要订阅的加速度传感器类型为 ACCELEROMETER。 |
+| callback | Callback<[AccelerometerResponse](#accelerometerresponse)> | 是 | 注册加速度传感器的回调函数,上报的数据类型为AccelerometerResponse。 |
+| options | [Options](#options) | 否 | 可选参数列表,设置上报频率,默认值为200000000ns。 |
**示例:**
- ```js
- sensor.on(sensor.SensorType.SENSOR_TYPE_ID_ACCELEROMETER,function(data){
- console.info('X-coordinate component: ' + data.x);
- console.info('Y-coordinate component: ' + data.y);
- console.info('Z-coordinate component: ' + data.z);
- },
- {interval: 10000000}
- );
- ```
-### LINEAR_ACCELERATION(deprecated)
+```js
+try {
+ sensor.on(sensor.SensorId.ACCELEROMETER,function(data){
+ console.info('X-coordinate component: ' + data.x);
+ console.info('Y-coordinate component: ' + data.y);
+ console.info('Z-coordinate component: ' + data.z);
+ }, {interval: 10000000} );
+} catch(err) {
+ console.info('on fail, errCode: ' + err.code + ' ,msg: ' + err.message);
+}
+```
-on(type: SensorType.SENSOR_TYPE_ID_LINEAR_ACCELERATION,callback:Callback<LinearAccelerometerResponse>, options?: Options): void
+### ACCELEROMETER_UNCALIBRATED9+
-监听线性加速度传感器的数据变化。如果多次调用该接口,仅最后一次调用生效。
+on(type: SensorId.ACCELEROMETER_UNCALIBRATED, callback: Callback<AccelerometerUncalibratedResponse>,options?: Options): void
-从API Version9开始该接口不再维护,请使用[sensor.on.LINEAR_ACCELEROMETER](#linear_accelerometer9)
+订阅未校准的加速度计传感器数据。
-**需要权限**:ohos.permission.ACCELEROMETER
+**需要权限**:ohos.permission.ACCELEROMETER
+
+**系统能力**:SystemCapability.Sensors.Sensor
+
+**参数:**
+
+| 参数名 | 类型 | 必填 | 说明 |
+| -------- | ------------------------------------------------------------ | ---- | ------------------------------------------------------------ |
+| type | [SensorId](#sensorid9) | 是 | 要订阅的未校准加速度传感器类型为ACCELEROMETER_UNCALIBRATED。 |
+| callback | Callback<[AccelerometerUncalibratedResponse](#accelerometeruncalibratedresponse)> | 是 | 注册未校准加速度计传感器的回调函数,上报的数据类型为AccelerometerUncalibratedResponse。 |
+| options | [Options](#options) | 否 | 可选参数列表,设置上报频率,默认值为200000000ns。 |
+
+**示例:**
+
+```js
+try {
+ sensor.on(sensor.SensorId.ACCELEROMETER_UNCALIBRATED,function(data){
+ console.info('X-coordinate component: ' + data.x);
+ console.info('Y-coordinate component: ' + data.y);
+ console.info('Z-coordinate component: ' + data.z);
+ console.info('X-coordinate bias: ' + data.biasX);
+ console.info('Y-coordinate bias: ' + data.biasY);
+ console.info('Z-coordinate bias: ' + data.biasZ);
+ }, {interval: 10000000} );
+} catch(err) {
+ console.info('on fail, errCode: ' + err.code + ' ,msg: ' + err.message);
+}
+```
+
+### AMBIENT_LIGHT9+
+
+on(type: SensorId.AMBIENT_LIGHT, callback: Callback<LightResponse>, options?: Options): void
+
+订阅环境光传感器数据。
**系统能力**:SystemCapability.Sensors.Sensor
**参数:**
-| 参数名 | 类型 | 必填 | 说明 |
-| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
-| type | [SensorType](#sensortype) | 是 | 要订阅的线性加速度传感器类型为SENSOR_TYPE_ID_LINEAR_ACCELERATION。 |
-| callback | Callback<[LinearAccelerometerResponse](#linearaccelerometerresponse)> | 是 | 注册线性加速度传感器的回调函数,上报的数据类型为LinearAccelerometerResponse。 |
-| options | [Options](#options) | 否 | 可选参数列表,设置上报频率,默认值为200000000ns。 |
-### LINEAR_ACCELEROMETER9+
+| 参数名 | 类型 | 必填 | 说明 |
+| -------- | ----------------------------------------------- | ---- | ----------------------------------------------------------- |
+| type | [SensorId](#sensorid9) | 是 | 要订阅的环境光传感器类型为AMBIENT_LIGHT。 |
+| callback | Callback<[LightResponse](#lightresponse)> | 是 | 注册环境光传感器的回调函数,上报的数据类型为LightResponse。 |
+| options | [Options](#options) | 否 | 可选参数列表,设置上报频率,默认值为200000000ns。 |
-on(type: SensorType.SENSOR_TYPE_ID_LINEAR_ACCELEROMETER,callback:Callback<LinearAccelerometerResponse>, options?: Options): void
+**示例:**
-监听线性加速度传感器的数据变化。如果多次调用该接口,仅最后一次调用生效。
+```js
+try {
+ sensor.on(sensor.SensorId.AMBIENT_LIGHT,function(data){
+ console.info('Illumination: ' + data.intensity);
+ }, {interval: 10000000} );
+} catch(err) {
+ console.info('on fail, errCode: ' + err.code + ' ,msg: ' + err.message);
+}
+```
-**需要权限**:ohos.permission.ACCELEROMETER
+### AMBIENT_TEMPERATURE9+
+
+on(type: SensorId.AMBIENT_TEMPERATURE, callback: Callback<AmbientTemperatureResponse>,options?: Options): void
+
+订阅环境温度传感器数据。
**系统能力**:SystemCapability.Sensors.Sensor
-**参数:**
-| 参数名 | 类型 | 必填 | 说明 |
-| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
-| type | [SensorType](#sensortype) | 是 | 要订阅的线性加速度传感器类型为SENSOR_TYPE_ID_LINEAR_ACCELEROMETER。 |
-| callback | Callback<[LinearAccelerometerResponse](#linearaccelerometerresponse)> | 是 | 注册线性加速度传感器的回调函数,上报的数据类型为LinearAccelerometerResponse。 |
-| options | [Options](#options) | 否 | 可选参数列表,设置上报频率,默认值为200000000ns。 |
+**参数:**
+
+| 参数名 | 类型 | 必填 | 说明 |
+| -------- | ------------------------------------------------------------ | ---- | ------------------------------------------------------------ |
+| type | [SensorId](#sensorid9) | 是 | 要订阅的环境温度传感器类型为AMBIENT_TEMPERATURE。 |
+| callback | Callback<[AmbientTemperatureResponse](#ambienttemperatureresponse)> | 是 | 注册环境温度传感器的回调函数,上报的数据类型为AmbientTemperatureResponse。 |
+| options | [Options](#options) | 否 | 可选参数列表,设置上报频率,默认值为200000000ns。 |
**示例:**
- ```js
- sensor.on(sensor.SensorType.SENSOR_TYPE_ID_LINEAR_ACCELEROMETER,function(data){
- console.info('X-coordinate component: ' + data.x);
- console.info('Y-coordinate component: ' + data.y);
- console.info('Z-coordinate component: ' + data.z);
- },
- {interval: 10000000}
- );
- ```
-### ACCELEROMETER_UNCALIBRATED
+```js
+try {
+ sensor.on(sensor.SensorId.AMBIENT_TEMPERATURE,function(data){
+ console.info('Temperature: ' + data.temperature);
+ }, {interval: 10000000} );
+} catch(err) {
+ console.info('on fail, errCode: ' + err.code + ' ,msg: ' + err.message);
+}
+```
-on(type: SensorType.SENSOR_TYPE_ID_ACCELEROMETER_UNCALIBRATED,callback: Callback<AccelerometerUncalibratedResponse>, options?: Options): void
+### BAROMETER9+
-监听未校准加速度计传感器的数据变化。如果多次调用该接口,仅最后一次调用生效。
+on(type: SensorId.BAROMETER, callback: Callback<BarometerResponse>, options?: Options): void
-**需要权限**:ohos.permission.ACCELEROMETER
+订阅气压计传感器数据。
**系统能力**:SystemCapability.Sensors.Sensor
-**参数:**
-| 参数名 | 类型 | 必填 | 说明 |
-| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
-| type | [SensorType](#sensortype) | 是 | 要订阅的未校准加速度计传感器类型为SENSOR_TYPE_ID_ACCELEROMETER_UNCALIBRATED。 |
-| callback | Callback<[AccelerometerUncalibratedResponse](#accelerometeruncalibratedresponse)> | 是 | 注册未校准加速度计传感器的回调函数,上报的数据类型为AccelerometerUncalibratedResponse。 |
-| options | [Options](#options) | 否 | 可选参数列表,设置上报频率,默认值为200000000ns。 |
+**参数:**
-**示例:**
- ```js
- sensor.on(sensor.SensorType.SENSOR_TYPE_ID_ACCELEROMETER_UNCALIBRATED,function(data){
- console.info('X-coordinate component: ' + data.x);
- console.info('Y-coordinate component: ' + data.y);
- console.info('Z-coordinate component: ' + data.z);
- console.info('X-coordinate bias: ' + data.biasX);
- console.info('Y-coordinate bias: ' + data.biasY);
- console.info('Z-coordinate bias: ' + data.biasZ);
- },
- {interval: 10000000}
- );
- ```
+| 参数名 | 类型 | 必填 | 说明 |
+| -------- | ------------------------------------------------------- | ---- | ------------------------------------------------------------ |
+| type | [SensorId](#sensorid9) | 是 | 要订阅的气压计传感器类型为BAROMETER。 |
+| callback | Callback<[BarometerResponse](#barometerresponse)> | 是 | 注册气压计传感器的回调函数,上报的数据类型为BarometerResponse。 |
+| options | [Options](#options) | 否 | 可选参数列表,设置上报频率,默认值为200000000ns。 |
-### GRAVITY
+**示例:**
-on(type: SensorType.SENSOR_TYPE_ID_GRAVITY, callback: Callback<GravityResponse>,options?: Options): void
+```js
+try {
+ sensor.on(sensor.SensorId.BAROMETER,function(data){
+ console.info('Atmospheric pressure: ' + data.pressure);
+ }, {interval: 10000000} );
+} catch(err) {
+ console.info('on fail, errCode: ' + err.code + ' ,msg: ' + err.message);
+}
+```
-监听重力传感器的数据变化。如果多次调用该接口,仅最后一次调用生效。
+### GRAVITY9+
+
+on(type: SensorId.GRAVITY, callback: Callback<GravityResponse>,options?: Options): void
+
+订阅重力传感器数据。
**系统能力**:SystemCapability.Sensors.Sensor
**参数:**
-| 参数名 | 类型 | 必填 | 说明 |
-| -------- | ---------------------------------------- | ---- | ------------------------------------- |
-| type | [SensorType](#sensortype) | 是 | 要订阅的重力传感器类型为SENSOR_TYPE_ID_GRAVITY。 |
-| callback | Callback<[GravityResponse](#gravityresponse)> | 是 | 注册重力传感器的回调函数,上报的数据类型为GravityResponse。 |
-| options | [Options](#options) | 否 | 可选参数列表,设置上报频率,默认值为200000000ns。 |
-**示例:**
- ```js
- sensor.on(sensor.SensorType.SENSOR_TYPE_ID_GRAVITY,function(data){
+| 参数名 | 类型 | 必填 | 说明 |
+| -------- | --------------------------------------------------- | ---- | ----------------------------------------------------------- |
+| type | [SensorId](#sensorid9) | 是 | 要订阅的重力传感器类型为GRAVITY。 |
+| callback | Callback<[GravityResponse](#gravityresponse)> | 是 | 注册重力传感器的回调函数,上报的数据类型为GravityResponse。 |
+| options | [Options](#options) | 否 | 可选参数列表,设置上报频率,默认值为200000000ns。 |
+
+**示例:**
+
+```js
+try {
+ sensor.on(sensor.SensorId.GRAVITY,function(data){
console.info('X-coordinate component: ' + data.x);
console.info('Y-coordinate component: ' + data.y);
console.info('Z-coordinate component: ' + data.z);
- },
- {interval: 10000000}
- );
- ```
+ }, {interval: 10000000} );
+} catch(err) {
+ console.info('on fail, errCode: ' + err.code + ' ,msg: ' + err.message);
+}
+```
-### GYROSCOPE
+### GYROSCOPE9+
-on(type: SensorType.SENSOR_TYPE_ID_GYROSCOPE, callback: Callback<GyroscopeResponse>, options?: Options): void
+on(type: SensorId.GYROSCOPE, callback: Callback<GyroscopeResponse>,options?: Options): void
-监听陀螺仪传感器的数据变化。如果多次调用该接口,仅最后一次调用生效。
+订阅校准的陀螺仪传感器数据。
-**需要权限**:ohos.permission.GYROSCOPE
+**需要权限**:ohos.permission.GYROSCOPE
-**系统能力**:SystemCapability.Sensors.Sensor
+**系统能力**:SystemCapability.Sensors.Sensor
**参数:**
-| 参数名 | 类型 | 必填 | 说明 |
-| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
-| type | [SensorType](#sensortype) | 是 | 要订阅的陀螺仪传感器类型为SENSOR_TYPE_ID_GYROSCOPE。 |
-| callback | Callback<[GyroscopeResponse](#gyroscoperesponse)> | 是 | 注册陀螺仪传感器的回调函数,上报的数据类型为GyroscopeResponse。 |
-| options | [Options](#options) | 否 | 可选参数列表,设置上报频率,默认值为200000000ns。 |
-**示例:**
- ```js
- sensor.on(sensor.SensorType.SENSOR_TYPE_ID_GYROSCOPE,function(data){
+| 参数名 | 类型 | 必填 | 说明 |
+| -------- | ------------------------------------------------------- | ---- | ------------------------------------------------------------ |
+| type | [SensorId](#sensorid9) | 是 | 要订阅的陀螺仪传感器类型为GYROSCOPE。 |
+| callback | Callback<[GyroscopeResponse](#gyroscoperesponse)> | 是 | 返回注册陀螺仪传感器的回调函数,上报的数据类型为GyroscopeResponse。 |
+| options | [Options](#options) | 否 | 可选参数列表,设置上报频率,默认值为200000000ns。 |
+
+**示例:**
+
+```js
+try {
+ sensor.on(sensor.SensorId.GYROSCOPE,function(data){
console.info('X-coordinate component: ' + data.x);
console.info('Y-coordinate component: ' + data.y);
console.info('Z-coordinate component: ' + data.z);
- },
- {interval: 10000000}
- );
- ```
+ }, {interval: 10000000} );
+} catch(err) {
+ console.info('on fail, errCode: ' + err.code + ' ,msg: ' + err.message);
+}
+```
-### GYROSCOPE_UNCALIBRATED
+### GYROSCOPE_UNCALIBRATED9+
-on(type: SensorType.SENSOR_TYPE_ID_GYROSCOPE_UNCALIBRATED,callback:Callback<GyroscopeUncalibratedResponse>, options?: Options): void
+on(type: SensorId.GYROSCOPE_UNCALIBRATED, callback: Callback<GyroscopeUncalibratedResponse>,
+ options?: Options): void
-监听未校准陀螺仪传感器的数据变化。如果多次调用该接口,仅最后一次调用生效。
+订阅未经校准的陀螺仪传感器数据
-**需要权限**:ohos.permission.GYROSCOPE
+**需要权限**:ohos.permission.GYROSCOPE
-**系统能力**:SystemCapability.Sensors.Sensor
+**系统能力**:SystemCapability.Sensors.Sensor
**参数:**
-| 参数名 | 类型 | 必填 | 说明 |
-| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
-| type | [SensorType](#sensortype) | 是 | 要订阅的未校准陀螺仪传感器类型为SENSOR_TYPE_ID_GYROSCOPE_UNCALIBRATED。 |
-| callback | Callback<[GyroscopeUncalibratedResponse](#gyroscopeuncalibratedresponse)> | 是 | 注册未校准陀螺仪传感器的回调函数,上报的数据类型为GyroscopeUncalibratedResponse。 |
-| options | [Options](#options) | 否 | 可选参数列表,设置上报频率。 |
-**示例:**
- ```js
- sensor.on(sensor.SensorType.SENSOR_TYPE_ID_GYROSCOPE_UNCALIBRATED,function(data){
+| 参数名 | 类型 | 必填 | 说明 |
+| -------- | ------------------------------------------------------------ | ---- | ------------------------------------------------------------ |
+| type | [SensorId](#sensorid9) | 是 | 要订阅的未校准陀螺仪传感器类型为GYROSCOPE_UNCALIBRATED。 |
+| callback | Callback<[GyroscopeUncalibratedResponse](#gyroscopeuncalibratedresponse)> | 是 | 注册未校准陀螺仪传感器的回调函数,上报的数据类型为GyroscopeUncalibratedResponse。 |
+| options | [Options](#options) | 否 | 可选参数列表,设置上报频率,默认值为200000000ns。 |
+
+**示例:**
+
+```js
+try {
+ sensor.on(sensor.SensorId.GYROSCOPE_UNCALIBRATED,function(data){
console.info('X-coordinate component: ' + data.x);
console.info('Y-coordinate component: ' + data.y);
console.info('Z-coordinate component: ' + data.z);
console.info('X-coordinate bias: ' + data.biasX);
console.info('Y-coordinate bias: ' + data.biasY);
console.info('Z-coordinate bias: ' + data.biasZ);
- },
- {interval: 10000000}
- );
- ```
+ }, {interval: 10000000} );
+} catch(err) {
+ console.info('on fail, errCode: ' + err.code + ' ,msg: ' + err.message);
+}
+```
-### SIGNIFICANT_MOTION
+### HALL9+
-on(type: SensorType.SENSOR_TYPE_ID_SIGNIFICANT_MOTION, callback: Callback<SignificantMotionResponse>, options?: Options): void
+on(type: SensorId.HALL, callback: Callback<HallResponse>, options?: Options): void
-监听大幅动作传感器数据变化。如果多次调用该接口,仅最后一次调用生效。
+订阅心率传感器数据。
**系统能力**:SystemCapability.Sensors.Sensor
**参数:**
-| 参数名 | 类型 | 必填 | 说明 |
-| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
-| type | [SensorType](#sensortype) | 是 | 要订阅的大幅动作传感器类型为SENSOR_TYPE_ID_SIGNIFICANT_MOTION。 |
-| callback | Callback<[SignificantMotionResponse](#significantmotionresponse)> | 是 | 注册有效运动传感器的回调函数,上报的数据类型为SignificantMotionResponse。 |
-| options | [Options](#options) | 否 | 可选参数列表,设置上报频率,默认值为200000000ns。 |
-**示例:**
- ```js
- sensor.on(sensor.SensorType.SENSOR_TYPE_ID_SIGNIFICANT_MOTION,function(data){
- console.info('Scalar data: ' + data.scalar);
- },
- {interval: 10000000}
- );
- ```
+| 参数名 | 类型 | 必填 | 说明 |
+| -------- | --------------------------------------------- | ---- | ------------------------------------------------------------ |
+| type | [SensorId](#sensorid9) | 是 | 要订阅的霍尔传感器类型为HALL。 |
+| callback | Callback<[HallResponse](#hallresponse)> | 是 | 注册霍尔传感器的回调函数,上报的数据类型为 HallResponse。 |
+| options | [Options](#options) | 否 | 可选参数列表,设置上报频率,默认值为200000000ns。 |
-### PEDOMETER_DETECTION
+**示例:**
-on(type: SensorType.SENSOR_TYPE_ID_PEDOMETER_DETECTION, callback: Callback<PedometerDetectionResponse>, options?: Options): void
+```js
+try {
+ sensor.on(sensor.SensorId.HALL,function(data){
+ console.info('Status: ' + data.status);
+ }, {interval: 10000000} );
+} catch(err) {
+ console.info('on fail, errCode: ' + err.code + ' ,msg: ' + err.message);
+}
+```
-监听计步检测传感器的数据变化。如果多次调用该接口,仅最后一次调用生效。
+### HEART_RATE9+
-**需要权限**:ohos.permission.ACTIVITY_MOTION
+on(type: SensorId.HEART_RATE, callback: Callback<HeartRateResponse>,options?: Options): void
+
+订阅心率传感器数据。
+
+**需要权限**:ohos.permission.READ_HEALTH_DATA
**系统能力**:SystemCapability.Sensors.Sensor
**参数:**
-| 参数名 | 类型 | 必填 | 说明 |
-| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
-| type | [SensorType](#sensortype) | 是 | 要订阅的计步检测传感器类型为SENSOR_TYPE_ID_PEDOMETER_DETECTION。 |
-| callback | Callback<[PedometerDetectionResponse](#pedometerdetectionresponse)> | 是 | 注册计步检测传感器的回调函数,上报的数据类型为PedometerDetectionResponse。 |
-| options | [Options](#options) | 否 | 可选参数列表,设置上报频率,默认值为200000000ns。 |
-**示例:**
- ```js
- sensor.on(sensor.SensorType.SENSOR_TYPE_ID_PEDOMETER_DETECTION,function(data){
- console.info('Scalar data: ' + data.scalar);
- },
- {interval: 10000000}
- );
- ```
+| 参数名 | 类型 | 必填 | 说明 |
+| -------- | ------------------------------------------------------- | ---- | ------------------------------------------------------------ |
+| type | [SensorId](#sensorid9) | 是 | 要订阅的心率传感器类型为HEART_RATE。 |
+| callback | Callback<[HeartRateResponse](#heartrateresponse)> | 是 | 注册一次心率传感器的回调函数,上报的数据类型为HeartRateResponse。 |
+| options | [Options](#options) | 否 | 可选参数列表,设置上报频率,默认值为200000000ns。 |
-### PEDOMETER
+**示例:**
-on(type: SensorType.SENSOR_TYPE_ID_PEDOMETER, callback: Callback<PedometerResponse>, options?: Options): void
+```js
+try {
+ sensor.on(sensor.SensorId.HEART_RATE,function(data){
+ console.info('Heart rate: ' + data.heartRate);
+ }, {interval: 10000000} );
+} catch(err) {
+ console.info('on fail, errCode: ' + err.code + ' ,msg: ' + err.message);
+}
+```
-监听计步传感器的数据变化。如果多次调用该接口,仅最后一次调用生效。
+### HUMIDITY9+
-**需要权限**:ohos.permission.ACTIVITY_MOTION
+on(type: SensorId.HUMIDITY, callback: Callback<HumidityResponse>,options?: Options): void
+
+订阅湿度传感器数据。
**系统能力**:SystemCapability.Sensors.Sensor
**参数:**
-| 参数名 | 类型 | 必填 | 说明 |
-| -------- | ---------------------------------------- | ---- | --------------------------------------- |
-| type | [SensorType](#sensortype) | 是 | 要订阅的计步传感器类型为SENSOR_TYPE_ID_PEDOMETER。 |
-| callback | Callback<[PedometerResponse](#pedometerresponse)> | 是 | 注册计步传感器的回调函数,上报的数据类型为PedometerResponse。 |
-| options | [Options](#options) | 否 | 可选参数列表,设置上报频率,默认值为200000000ns。 |
-**示例:**
- ```js
- sensor.on(sensor.SensorType.SENSOR_TYPE_ID_PEDOMETER,function(data){
- console.info('Steps: ' + data.steps);
- },
- {interval: 10000000}
- );
- ```
+| 参数名 | 类型 | 必填 | 说明 |
+| -------- | ----------------------------------------------------- | ---- | ------------------------------------------------------------ |
+| type | [SensorId](#sensorid9) | 是 | 要订阅的湿度传感器类型为HUMIDITY。 |
+| callback | Callback<[HumidityResponse](#humidityresponse)> | 是 | 注册湿度传感器的回调函数,上报的数据类型为HumidityResponse。 |
+| options | [Options](#options) | 否 | 可选参数列表,设置上报频率,默认值为200000000ns。 |
-### AMBIENT_TEMPERATURE
+**示例:**
-on(type: SensorType.SENSOR_TYPE_ID_AMBIENT_TEMPERATURE,callback:Callback<AmbientTemperatureResponse>, options?: Options): void
+```js
+try {
+ sensor.on(sensor.SensorId.HUMIDITY,function(data){
+ console.info('Humidity: ' + data.humidity);
+ }, {interval: 10000000} );
+} catch(err) {
+ console.info('on fail, errCode: ' + err.code + ' ,msg: ' + err.message);
+}
+```
-监听环境温度传感器的数据变化。如果多次调用该接口,仅最后一次调用生效。
+### LINEAR_ACCELERATION9+
-**系统能力**:SystemCapability.Sensors.Sensor
+on(type: SensorId.LINEAR_ACCELEROMETER, callback: Callback<LinearAccelerometerResponse>,
+ options?: Options): void
-**参数:**
-| 参数名 | 类型 | 必填 | 说明 |
-| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
-| type | [SensorType](#sensortype) | 是 | 要订阅的环境温度传感器类型为SENSOR_TYPE_ID_AMBIENT_TEMPERATURE。 |
-| callback | Callback<[AmbientTemperatureResponse](#ambienttemperatureresponse)> | 是 | 注册环境温度传感器的回调函数,上报的数据类型为AmbientTemperatureResponse。 |
-| options | [Options](#options) | 否 | 可选参数列表,设置上报频率,默认值为200000000ns。 |
+订阅线性加速度传感器数据。
-**示例:**
+**需要权限**:ohos.permission.ACCELEROMETER
- ```js
- sensor.on(sensor.SensorType.SENSOR_TYPE_ID_AMBIENT_TEMPERATURE,function(data){
- console.info('Temperature: ' + data.temperature);
- },
- {interval: 10000000}
- );
- ```
+**系统能力**:SystemCapability.Sensors.Sensor
-### MAGNETIC_FIELD
+**参数:**
-on(type: SensorType.SENSOR_TYPE_ID_MAGNETIC_FIELD, callback: Callback<MagneticFieldResponse>,options?: Options): void
+| 参数名 | 类型 | 必填 | 说明 |
+| -------- | ------------------------------------------------------------ | ---- | ------------------------------------------------------------ |
+| type | [SensorId](#sensorid9) | 是 | 要订阅的线性加速度传感器类型为LINEAR_ACCELEROMETER。 |
+| callback | Callback<[LinearAccelerometerResponse](#linearaccelerometerresponse)> | 是 | 注册线性加速度传感器的回调函数,上报的数据类型为LinearAccelerometerResponse。 |
+| options | [Options](#options) | 否 | 可选参数列表,设置上报频率,默认值为200000000ns。 |
-监听磁场传感器的数据变化。如果多次调用该接口,仅最后一次调用生效。
+**示例:**
-**系统能力**:SystemCapability.Sensors.Sensor
+```js
+try {
+ sensor.on(sensor.SensorId.LINEAR_ACCELEROMETER, function(data) {
+ console.info('X-coordinate component: ' + data.x);
+ console.info('Y-coordinate component: ' + data.y);
+ console.info('Z-coordinate component: ' + data.z);
+ }, {interval: 10000000} );
+} catch(err) {
+ console.info('on fail, errCode: ' + err.code + ' ,msg: ' + err.message);
+}
+```
-**参数:**
+### MAGNETIC_FIELD9+
-| 参数名 | 类型 | 必填 | 说明 |
-| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
-| type | [SensorType](#sensortype) | 是 | 要订阅的磁场传感器类型为SENSOR_TYPE_ID_MAGNETIC_FIELD。 |
-| callback | Callback<[MagneticFieldResponse](#magneticfieldresponse)> | 是 | 注册磁场传感器的回调函数,上报的数据类型为MagneticFieldResponse。 |
-| options | [Options](#options) | 否 | 可选参数列表,设置上报频率,默认值为200000000ns。 |
+on(type: SensorId.MAGNETIC_FIELD, callback: Callback<MagneticFieldResponse>,options?: Options): void
-**示例:**
- ```js
- sensor.on(sensor.SensorType.SENSOR_TYPE_ID_MAGNETIC_FIELD,function(data){
+订阅磁场传感器数据。
+
+**系统能力**:SystemCapability.Sensors.Sensor
+
+**参数:**
+
+| 参数名 | 类型 | 必填 | 说明 |
+| -------- | ------------------------------------------------------------ | ---- | ------------------------------------------------------------ |
+| type | [SensorId](#sensorid9) | 是 | 要订阅的磁场传感器类型为MAGNETIC_FIELD。 |
+| callback | Callback<[MagneticFieldResponse](#magneticfieldresponse)> | 是 | 注册磁场传感器的回调函数,上报的数据类型为MagneticFieldResponse。 |
+| options | [Options](#options) | 否 | 可选参数列表,设置上报频率,默认值为200000000ns。 |
+
+**示例:**
+
+```js
+try {
+ sensor.on(sensor.SensorId.MAGNETIC_FIELD,function(data){
console.info('X-coordinate component: ' + data.x);
console.info('Y-coordinate component: ' + data.y);
console.info('Z-coordinate component: ' + data.z);
- },
- {interval: 10000000}
- );
- ```
+ }, {interval: 10000000} );
+} catch(err) {
+ console.info('on fail, errCode: ' + err.code + ' ,msg: ' + err.message);
+}
+```
-### MAGNETIC_FIELD_UNCALIBRATED
+### MAGNETIC_FIELD_UNCALIBRATED9+
-on(type: SensorType.SENSOR_TYPE_ID_MAGNETIC_FIELD_UNCALIBRATED,callback: Callback<MagneticFieldUncalibratedResponse>, options?: Options): void
+on(type: SensorId.MAGNETIC_FIELD_UNCALIBRATED, callback: Callback<MagneticFieldUncalibratedResponse>, options?: Options): void
-监听未校准磁场传感器的数据变化。如果多次调用该接口,仅最后一次调用生效。
+订阅未校准的磁场传感器数据
-**系统能力**:SystemCapability.Sensors.Sensor
+**系统能力**:SystemCapability.Sensors.Sensor
-**参数:**
+**参数:**
-| 参数名 | 类型 | 必填 | 说明 |
-| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
-| type | [SensorType](#sensortype) | 是 | 要订阅的未校准磁场传感器类型为SENSOR_TYPE_ID_MAGNETIC_FIELD_UNCALIBRATED。 |
-| callback | Callback<[MagneticFieldUncalibratedResponse](#magneticfielduncalibratedresponse)> | 是 | 注册未校准磁场传感器的回调函数,上报的数据类型为MagneticFieldUncalibratedResponse。 |
-| options | [Options](#options) | 否 | 可选参数列表,设置上报频率,默认值为200000000ns。 |
+| 参数名 | 类型 | 必填 | 说明 |
+| -------- | ------------------------------------------------------------ | ---- | ------------------------------------------------------------ |
+| type | [SensorId](#sensorid9) | 是 | 要订阅的未校准磁场传感器类型为MAGNETIC_FIELD_UNCALIBRATED。 |
+| callback | Callback<[MagneticFieldUncalibratedResponse](#magneticfielduncalibratedresponse)> | 是 | 注册未校准磁场传感器的回调函数,上报的数据类型为MagneticFieldUncalibratedResponse。 |
+| options | [Options](#options) | 否 | 可选参数列表,设置上报频率,默认值为200000000ns。 |
-**示例:**
- ```js
- sensor.on(sensor.SensorType.SENSOR_TYPE_ID_MAGNETIC_FIELD_UNCALIBRATED,function(data){
+**示例:**
+
+```js
+try {
+ sensor.on(sensor.SensorId.MAGNETIC_FIELD_UNCALIBRATED,function(data){
console.info('X-coordinate component: ' + data.x);
console.info('Y-coordinate component: ' + data.y);
console.info('Z-coordinate component: ' + data.z);
console.info('X-coordinate bias: ' + data.biasX);
console.info('Y-coordinate bias: ' + data.biasY);
console.info('Z-coordinate bias: ' + data.biasZ);
- },
- {interval: 10000000}
- );
- ```
+ }, {interval: 10000000} );
+} catch(err) {
+ console.info('on fail, errCode: ' + err.code + ' ,msg: ' + err.message);
+}
+```
-### PROXIMITY
+### ORIENTATION9+
-on(type: SensorType.SENSOR_TYPE_ID_PROXIMITY, callback: Callback<ProximityResponse>,options?: Options): void
+on(type: SensorId.ORIENTATION, callback: Callback<OrientationResponse>,options?: Options): void
-监听接近光传感器的数据变化。如果多次调用该接口,仅最后一次调用生效。
+订阅定向传感器数据。
-**系统能力**:SystemCapability.Sensors.Sensor
+**系统能力**:SystemCapability.Sensors.Sensor
-**参数:**
-| 参数名 | 类型 | 必填 | 说明 |
-| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
-| type | [SensorType](#sensortype) | 是 | 要订阅的接近光传感器类型为SENSOR_TYPE_ID_PROXIMITY。 |
-| callback | Callback<[ProximityResponse](#proximityresponse)> | 是 | 注册接近光传感器的回调函数,上报的数据类型为ProximityResponse。 |
-| options | [Options](#options) | 否 | 可选参数列表,设置上报频率,默认值为200000000ns。 |
+**参数:**
-**示例:**
- ```js
- sensor.on(sensor.SensorType.SENSOR_TYPE_ID_PROXIMITY,function(data){
- console.info('Distance: ' + data.distance);
- },
- {interval: 10000000}
- );
- ```
+| 参数名 | 类型 | 必填 | 说明 |
+| -------- | ----------------------------------------------------------- | ---- | ------------------------------------------------------------ |
+| type | [SensorId](#sensorid9) | 是 | 要订阅的方向传感器类型为ORIENTATION。 |
+| callback | Callback<[OrientationResponse](#orientationresponse)> | 是 | 注册方向传感器的回调函数,上报的数据类型为OrientationResponse。 |
+| options | [Options](#options) | 否 | 可选参数列表,设置上报频率,默认值为200000000ns。 |
-### HUMIDITY
+**示例:**
-on(type: SensorType.SENSOR_TYPE_ID_HUMIDITY, callback: Callback<HumidityResponse>,options?: Options): void
+```js
+try {
+ sensor.on(sensor.SensorId.ORIENTATION,function(data){
+ console.info('The device rotates at an angle around the X axis: ' + data.beta);
+ console.info('The device rotates at an angle around the Y axis: ' + data.gamma);
+ console.info('The device rotates at an angle around the Z axis: ' + data.alpha);
+ }, {interval: 10000000} );
+} catch(err) {
+ console.info('on fail, errCode: ' + err.code + ' ,msg: ' + err.message);
+}
+```
-监听湿度传感器的数据变化。如果多次调用该接口,仅最后一次调用生效。
+### PEDOMETER9+
-**系统能力**:SystemCapability.Sensors.Sensor
+on(type: SensorId.PEDOMETER, callback: Callback<PedometerResponse>, options?: Options): void
-**参数:**
-| 参数名 | 类型 | 必填 | 说明 |
-| -------- | ---------------------------------------- | ---- | -------------------------------------- |
-| type | [SensorType](#sensortype) | 是 | 要订阅的湿度传感器类型为SENSOR_TYPE_ID_HUMIDITY。 |
-| callback | Callback<[HumidityResponse](#humidityresponse)> | 是 | 注册湿度传感器的回调函数,上报的数据类型为HumidityResponse。 |
-| options | [Options](#options) | 否 | 可选参数列表,设置上报频率,默认值为200000000ns。 |
+订阅计步器传感器数据。
-**示例:**
+**需要权限**:ohos.permission.ACTIVITY_MOTION
- ```js
- sensor.on(sensor.SensorType.SENSOR_TYPE_ID_HUMIDITY,function(data){
- console.info('Humidity: ' + data.humidity);
- },
- {interval: 10000000}
- );
- ```
+**系统能力**:SystemCapability.Sensors.Sensor
-### BAROMETER
+**参数:**
-on(type: SensorType.SENSOR_TYPE_ID_BAROMETER, callback: Callback<BarometerResponse>,options?: Options): void
+| 参数名 | 类型 | 必填 | 说明 |
+| -------- | ------------------------------------------------------- | ---- | ------------------------------------------------------------ |
+| type | [SensorId](#sensorid9) | 是 | 要订阅的计步传感器类型为PEDOMETER。 |
+| callback | Callback<[PedometerResponse](#pedometerresponse)> | 是 | 注册计步传感器的回调函数,上报的数据类型为PedometerResponse。 |
+| options | [Options](#options) | 否 | 可选参数列表,设置上报频率,默认值为200000000ns。 |
-监听气压计传感器的数据变化。如果多次调用该接口,仅最后一次调用生效。
+**示例:**
-**系统能力**:SystemCapability.Sensors.Sensor
+```js
+try {
+ sensor.on(sensor.SensorId.PEDOMETER,function(data){
+ console.info('Steps: ' + data.steps);
+ }, {interval: 10000000} );
+} catch(err) {
+ console.info('on fail, errCode: ' + err.code + ' ,msg: ' + err.message);
+}
+```
-**参数:**
+### PEDOMETER_DETECTION9+
-| 参数名 | 类型 | 必填 | 说明 |
-| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
-| type | [SensorType](#sensortype) | 是 | 要订阅的气压计传感器类型为SENSOR_TYPE_ID_BAROMETER。 |
-| callback | Callback<[BarometerResponse](#barometerresponse)> | 是 | 注册气压计传感器的回调函数,上报的数据类型为BarometerResponse。 |
-| options | [Options](#options) | 否 | 可选参数列表,设置上报频率,默认值为200000000ns。 |
+on(type: SensorId.PEDOMETER_DETECTION, callback: Callback<PedometerDetectionResponse>,
+ options?: Options): void
-**示例:**
+订阅计步器检测传感器数据。
- ```js
- sensor.on(sensor.SensorType.SENSOR_TYPE_ID_BAROMETER,function(data){
- console.info('Atmospheric pressure: ' + data.pressure);
- },
- {interval: 10000000}
- );
- ```
+**需要权限**:ohos.permission.ACTIVITY_MOTION
-### HALL
+**系统能力**:SystemCapability.Sensors.Sensor
-on(type: SensorType.SENSOR_TYPE_ID_HALL, callback: Callback<HallResponse>, options?: Options): void
+**参数:**
-监听霍尔传感器的数据变化。如果多次调用该接口,仅最后一次调用生效。
+| 参数名 | 类型 | 必填 | 说明 |
+| -------- | ------------------------------------------------------------ | ---- | ------------------------------------------------------------ |
+| type | [SensorId](#sensorid9) | 是 | 要订阅的计步检测传感器类型为PEDOMETER_DETECTION。 |
+| callback | Callback<[PedometerDetectionResponse](#pedometerdetectionresponse)> | 是 | 注册计步检测传感器的回调函数,上报的数据类型为PedometerDetectionResponse。 |
+| options | [Options](#options) | 否 | 可选参数列表,设置上报频率,默认值为200000000ns。 |
-**系统能力**:SystemCapability.Sensors.Sensor
+**示例:**
-**参数:**
-| 参数名 | 类型 | 必填 | 说明 |
-| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
-| type | [SensorType](#sensortype) | 是 | 要订阅的霍尔传感器类型为SENSOR_TYPE_ID_HALL。 |
-| callback | Callback<[HallResponse](#hallresponse)> | 是 | 注册霍尔传感器的回调函数,上报的数据类型为 HallResponse。 |
-| options | [Options](#options) | 否 | 可选参数列表,设置上报频率,默认值为200000000ns。 |
+```js
+try {
+ sensor.on(sensor.SensorId.PEDOMETER_DETECTION,function(data){
+ console.info('Scalar data: ' + data.scalar);
+ }, {interval: 10000000} );
+} catch(err) {
+ console.info('on fail, errCode: ' + err.code + ' ,msg: ' + err.message);
+}
+```
-**示例:**
- ```js
- sensor.on(sensor.SensorType.SENSOR_TYPE_ID_HALL,function(data){
- console.info('Status: ' + data.status);
- },
- {interval: 10000000}
- );
- ```
+### PROXIMITY9+
-### AMBIENT_LIGHT
+on(type: SensorId.PROXIMITY, callback: Callback<ProximityResponse>, options?: Options): void
-on(type: SensorType.SENSOR_TYPE_ID_AMBIENT_LIGHT, callback: Callback<LightResponse>, options?: Options): void
+订阅接近传感器数据。
-监听环境光传感器的数据变化。如果多次调用该接口,仅最后一次调用生效。
+**系统能力**:SystemCapability.Sensors.Sensor
-**系统能力**:SystemCapability.Sensors.Sensor
+**参数:**
-**参数:**
-| 参数名 | 类型 | 必填 | 说明 |
-| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
-| type | [SensorType](#sensortype) | 是 | 要订阅的环境光传感器类型为SENSOR_TYPE_ID_AMBIENT_LIGHT。 |
-| callback | Callback<[LightResponse](#lightresponse)> | 是 | 注册环境光传感器的回调函数,上报的数据类型为LightResponse。 |
-| options | [Options](#options) | 否 | 可选参数列表,设置上报频率,默认值为200000000ns。 |
+| 参数名 | 类型 | 必填 | 说明 |
+| -------- | ------------------------------------------------------- | ---- | ------------------------------------------------------------ |
+| type | [SensorId](#sensorid9) | 是 | 要订阅的接近光传感器类型为PROXIMITY。 |
+| callback | Callback<[ProximityResponse](#proximityresponse)> | 是 | 注册接近光传感器的回调函数,上报的数据类型为ProximityResponse。 |
+| options | [Options](#options) | 否 | 可选参数列表,设置上报频率,默认值为200000000ns。 |
**示例:**
- ```js
- sensor.on(sensor.SensorType.SENSOR_TYPE_ID_AMBIENT_LIGHT,function(data){
- console.info(' Illumination: ' + data.intensity);
- },
- {interval: 10000000}
- );
- ```
-### ORIENTATION
+```js
+try {
+ sensor.on(sensor.SensorId.PROXIMITY,function(data){
+ console.info('Distance: ' + data.distance);
+ }, {interval: 10000000} );
+} catch(err) {
+ console.info('on fail, errCode: ' + err.code + ' ,msg: ' + err.message);
+}
+```
-on(type: SensorType.SENSOR_TYPE_ID_ORIENTATION, callback: Callback<OrientationResponse>, options?: Options): void
+### ROTATION_VECTOR9+
-监听方向传感器的数据变化。如果多次调用该接口,仅最后一次调用生效。
+on(type: SensorId.ROTATION_VECTOR, callback: Callback<RotationVectorResponse>,
+ options?: Options): void
-**系统能力**:SystemCapability.Sensors.Sensor
+订阅旋转矢量传感器数据。
-**参数:**
-| 参数名 | 类型 | 必填 | 说明 |
-| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
-| type | [SensorType](#sensortype) | 是 | 要订阅的方向传感器类型为SENSOR_TYPE_ID_ORIENTATION |
-| callback | Callback<[OrientationResponse](#orientationresponse)> | 是 | 注册方向传感器的回调函数,上报的数据类型为OrientationResponse。 |
-| options | [Options](#options) | 否 | 可选参数列表,设置上报频率,默认值为200000000ns。 |
+**系统能力**:SystemCapability.Sensors.Sensor
-**示例:**
- ```js
- sensor.on(sensor.SensorType.SENSOR_TYPE_ID_ORIENTATION,function(data){
- console.info('The device rotates at an angle around the X axis: ' + data.beta);
- console.info('The device rotates at an angle around the Y axis: ' + data.gamma);
- console.info('The device rotates at an angle around the Z axis: ' + data.alpha);
- },
- {interval: 10000000}
- );
- ```
+**参数:**
-### HEART_RATE(deprecated)
+| 参数名 | 类型 | 必填 | 说明 |
+| -------- | ------------------------------------------------------------ | ---- | ------------------------------------------------------------ |
+| type | [SensorId](#sensorid9) | 是 | 要订阅的旋转矢量传感器类型为ROTATION_VECTOR。 |
+| callback | Callback<[RotationVectorResponse](#rotationvectorresponse)> | 是 | 注册旋转矢量传感器的回调函数,上报的数据类型为RotationVectorResponse。 |
+| options | [Options](#options) | 否 | 可选参数列表,设置上报频率,默认值为200000000ns。 |
-on(type: SensorType.SENSOR_TYPE_ID_HEART_RATE, callback: Callback<HeartRateResponse>, options?: Options): void
+**示例:**
-监听心率传感器数据变化一次。
+```js
+try {
+ sensor.on(sensor.SensorId.ROTATION_VECTOR,function(data){
+ console.info('X-coordinate component: ' + data.x);
+ console.info('Y-coordinate component: ' + data.y);
+ console.info('Z-coordinate component: ' + data.z);
+ console.info('Scalar quantity: ' + data.w);
+ }, {interval: 10000000} );
+} catch(err) {
+ console.info('on fail, errCode: ' + err.code + ' ,msg: ' + err.message);
+}
+```
-从API Version9开始该接口不再维护,请使用[sensor.on.HEART_BEAT_RATE](#heart_beat_rate9)
+### SIGNIFICANT_MOTION9+
-**需要权限**:ohos.permission.HEALTH_DATA
+on(type: SensorId.SIGNIFICANT_MOTION, callback: Callback<SignificantMotionResponse>,
+ options?: Options): void
+
+订阅重要的运动传感器数据。
**系统能力**:SystemCapability.Sensors.Sensor
**参数:**
-| 参数名 | 类型 | 必填 | 说明 |
-| -------- | ------------------------------------------------------- | ---- | ------------------------------------------------------------ |
-| type | [SensorType](#sensortype) | 是 | 要订阅的心率传感器类型为SENSOR_TYPE_ID_HEART_RATE。 |
-| callback | Callback<[HeartRateResponse](#heartrateresponse)> | 是 | 注册一次心率传感器的回调函数,上报的数据类型为HeartRateResponse。 |
+| 参数名 | 类型 | 必填 | 说明 |
+| -------- | ------------------------------------------------------------ | ---- | ------------------------------------------------------------ |
+| type | [SensorId](#sensorid9) | 是 | 要订阅的大幅动作传感器类型为SIGNIFICANT_MOTION。 |
+| callback | Callback<[SignificantMotionResponse](#significantmotionresponse)> | 是 | 注册有效运动传感器的回调函数,上报的数据类型为SignificantMotionResponse。 |
+| options | [Options](#options) | 否 | 可选参数列表,设置上报频率,默认值为200000000ns。 |
-### HEART_BEAT_RATE9+
+**示例:**
+
+```js
+try {
+ sensor.on(sensor.SensorId.SIGNIFICANT_MOTION,function(data){
+ console.info('Scalar data: ' + data.scalar);
+ }, {interval: 10000000} );
+} catch(err) {
+ console.info('on fail, errCode: ' + err.code + ' ,msg: ' + err.message);
+}
+```
-on(type: SensorType.SENSOR_TYPE_ID_HEART_BEAT_RATE, callback: Callback<HeartRateResponse>, options?: Options): void
+### WEAR_DETECTION9+
-监听心率传感器数据变化一次。
+on(type: SensorId.WEAR_DETECTION, callback: Callback<WearDetectionResponse>,
+ options?: Options): void
-**需要权限**:ohos.permission.READ_HEALTH_DATA
+订阅磨损检测传感器数据。
**系统能力**:SystemCapability.Sensors.Sensor
-**参数:**
+**参数:**
-| 参数名 | 类型 | 必填 | 说明 |
-| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
-| type | [SensorType](#sensortype) | 是 | 要订阅的心率传感器类型为SENSOR_TYPE_ID_HEART_BEAT_RATE。 |
-| callback | Callback<[HeartRateResponse](#heartrateresponse)> | 是 | 注册一次心率传感器的回调函数,上报的数据类型为HeartRateResponse。 |
+| 参数名 | 类型 | 必填 | 说明 |
+| -------- | ------------------------------------------------------------ | ---- | ------------------------------------------------------------ |
+| type | [SensorId](#sensorid9) | 是 | 要订阅的佩戴检测传感器类型为WEAR_DETECTION。 |
+| callback | Callback<[WearDetectionResponse](#weardetectionresponse)> | 是 | 注册佩戴检测传感器的回调函数,上报的数据类型为WearDetectionResponse。 |
+| options | [Options](#options) | 否 | 可选参数列表,设置上报频率,默认值为200000000ns。 |
-**示例:**
+**示例:**
```js
-sensor.on(sensor.SensorType.SENSOR_TYPE_ID_HEART_BEAT_RATE,function(data){
- console.info("Heart rate: " + data.heartRate);
-},
- {interval: 10000000}
-);
+try {
+ sensor.on(sensor.SensorId.WEAR_DETECTION,function(data){
+ console.info('Wear status: ' + data.value);
+ }, {interval: 10000000} );
+} catch(err) {
+ console.info('on fail, errCode: ' + err.code + ' ,msg: ' + err.message);
+}
```
-### ROTATION_VECTOR
+## sensor.once9+
-on(type: SensorType.SENSOR_TYPE_ID_ROTATION_VECTOR,callback: Callback<RotationVectorResponse>,options?: Options): void
+### ACCELEROMETER9+
-监听旋转矢量传感器的数据变化。如果多次调用该接口,仅最后一次调用生效。
+once(type: SensorId.ACCELEROMETER, callback: Callback<AccelerometerResponse>): void
+
+订阅一次加速度计传感器数据。
+
+**需要权限**:ohos.permission.ACCELEROMETER
**系统能力**:SystemCapability.Sensors.Sensor
**参数:**
-| 参数名 | 类型 | 必填 | 说明 |
-| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
-| type | [SensorType](#sensortype) | 是 | 要订阅的旋转矢量传感器类型为SENSOR_TYPE_ID_ROTATION_VECTOR。 |
-| callback | Callback<[RotationVectorResponse](#rotationvectorresponse)> | 是 | 注册旋转矢量传感器的回调函数,上报的数据类型为RotationVectorResponse。 |
-| options | [Options](#options) | 否 | 可选参数列表,设置上报频率,默认值为200000000ns。 |
+
+| 参数名 | 类型 | 必填 | 说明 |
+| -------- | ------------------------------------------------------------ | ---- | ------------------------------------------------------------ |
+| type | [SensorId](#sensorid9) | 是 | 加速度传感器类型为ACCELEROMETER。 |
+| callback | Callback<[AccelerometerResponse](#accelerometerresponse)> | 是 | 注册一次加速度传感器的回调函数,上报的数据类型为AccelerometerResponse。 |
**示例:**
- ```js
- sensor.on(sensor.SensorType.SENSOR_TYPE_ID_ROTATION_VECTOR,function(data){
+
+```js
+try {
+ sensor.once(sensor.SensorId.ACCELEROMETER,function(data){
console.info('X-coordinate component: ' + data.x);
console.info('Y-coordinate component: ' + data.y);
console.info('Z-coordinate component: ' + data.z);
- console.info('Scalar quantity: ' + data.w);
- },
- {interval: 10000000}
+ }
);
- ```
+} catch(err) {
+ console.info('once fail, errCode: ' + err.code + ' ,msg: ' + err.message);
+}
+```
-### WEAR_DETECTION
+### ACCELEROMETER_UNCALIBRATED9+
-on(type: SensorType.SENSOR_TYPE_ID_WEAR_DETECTION, callback: Callback<WearDetectionResponse>,options?: Options): void
+once(type: SensorId.ACCELEROMETER_UNCALIBRATED, callback: Callback<AccelerometerUncalibratedResponse>): void
-监听佩戴检测传感器的数据变化。如果多次调用该接口,仅最后一次调用生效。
+订阅一次未校准的加速度计传感器数据。
+
+**需要权限**:ohos.permission.ACCELEROMETER
**系统能力**:SystemCapability.Sensors.Sensor
**参数:**
-| 参数名 | 类型 | 必填 | 说明 |
-| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
-| type | [SensorType](#sensortype) | 是 | 要订阅的佩戴检测传感器类型为SENSOR_TYPE_ID_WEAR_DETECTION。 |
-| callback | Callback<[WearDetectionResponse](#weardetectionresponse)> | 是 | 注册佩戴检测传感器的回调函数,上报的数据类型为WearDetectionResponse。 |
-| options | [Options](#options) | 否 | 可选参数列表,设置上报频率,默认值为200000000ns。 |
-**示例:**
- ```js
- sensor.on(sensor.SensorType.SENSOR_TYPE_ID_WEAR_DETECTION,function(data){
- console.info('Wear status: ' + data.value);
- },
- {interval: 10000000}
- );
- ```
+| 参数名 | 类型 | 必填 | 说明 |
+| -------- | ------------------------------------------------------------ | ---- | ------------------------------------------------------------ |
+| type | [SensorId](#sensorid9) | 是 | 未校准加速度传感器类型为ACCELEROMETER_UNCALIBRATED。 |
+| callback | Callback<[AccelerometerUncalibratedResponse](#accelerometeruncalibratedresponse)> | 是 | 注册一次未校准加速度传感器的回调函数,上报的数据类型为AccelerometerUncalibratedResponse。 |
-## sensor.once
+**示例:**
-### ACCELEROMETER
+```js
+try {
+ sensor.once(sensor.SensorId.ACCELEROMETER_UNCALIBRATED, function(data) {
+ console.info('X-coordinate component: ' + data.x);
+ console.info('Y-coordinate component: ' + data.y);
+ console.info('Z-coordinate component: ' + data.z);
+ console.info('X-coordinate bias: ' + data.biasX);
+ console.info('Y-coordinate bias: ' + data.biasY);
+ console.info('Z-coordinate bias: ' + data.biasZ);
+ }
+ );
+} catch(err) {
+ console.info('once fail, errCode: ' + err.code + ' ,msg: ' + err.message);
+}
+```
-once(type: SensorType.SENSOR_TYPE_ID_ACCELEROMETER, callback: Callback<AccelerometerResponse>): void
+### AMBIENT_LIGHT9+
-监听加速度传感器的数据变化一次。
+once(type: SensorId.AMBIENT_LIGHT, callback: Callback<LightResponse>): void
-**需要权限**:ohos.permission.ACCELEROMETER
+订阅环境光传感器数据一次。
**系统能力**:SystemCapability.Sensors.Sensor
**参数:**
-| 参数名 | 类型 | 必填 | 说明 |
-| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
-| type | [SensorType](#sensortype) | 是 | 加速度传感器类型为SENSOR_TYPE_ID_ACCELEROMETER。 |
-| callback | Callback<[AccelerometerResponse](#accelerometerresponse)> | 是 | 注册一次加速度传感器的回调函数,上报的数据类型为AccelerometerResponse。 |
+| 参数名 | 类型 | 必填 | 说明 |
+| -------- | ----------------------------------------------- | ---- | ------------------------------------------------------------ |
+| type | [SensorId](#sensorid9) | 是 | 环境光传感器类型为AMBIENT_LIGHT。 |
+| callback | Callback<[LightResponse](#lightresponse)> | 是 | 注册一次环境光传感器的回调函数,上报的数据类型为LightResponse。 |
**示例:**
- ```js
- sensor.once(sensor.SensorType.SENSOR_TYPE_ID_ACCELEROMETER,function(data){
- console.info('X-coordinate component: ' + data.x);
- console.info('Y-coordinate component: ' + data.y);
- console.info('Z-coordinate component: ' + data.z);
- }
- );
- ```
-
-### LINEAR_ACCELERATION(deprecated)
-once(type: SensorType.SENSOR_TYPE_ID_LINEAR_ACCELERATION,callback:Callback<LinearAccelerometerResponse>): void
+```js
+try {
+ sensor.once(sensor.SensorId.AMBIENT_LIGHT, function(data) {
+ console.info('Illumination: ' + data.intensity);
+ }
+ );
+} catch(err) {
+ console.info('once fail, errCode: ' + err.code + ' ,msg: ' + err.message);
+}
+```
-监听线性加速度传感器数据变化一次。
+### AMBIENT_TEMPERATURE9+
-从API Version9开始该接口不再维护,请用[sensor.once.LINEAR_ACCELEROMETER](#linear_accelerometer9)
+once(type: SensorId.AMBIENT_TEMPERATURE, callback: Callback<AmbientTemperatureResponse>): void
-**需要权限**:ohos.permission.ACCELERATION
+一次订阅环境温度传感器数据。
**系统能力**:SystemCapability.Sensors.Sensor
**参数:**
-| 参数名 | 类型 | 必填 | 说明 |
-| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
-| type | [SensorType](#sensortype) | 是 | 线性加速度传感器类型为SENSOR_TYPE_ID_LINEAR_ACCELERATION。 |
-| callback | Callback<[LinearAccelerometerResponse](#linearaccelerometerresponse)> | 是 | 注册一次线性加速度传感器的回调函数,上报的数据类型为LinearAccelerometerResponse。 |
+| 参数名 | 类型 | 必填 | 说明 |
+| -------- | ------------------------------------------------------------ | ---- | ------------------------------------------------------------ |
+| type | [SensorId](#sensorid9) | 是 | 环境温度传感器类型为AMBIENT_TEMPERATURE。 |
+| callback | Callback<[AmbientTemperatureResponse](#ambienttemperatureresponse)> | 是 | 注册一次环境温度传感器的回调函数,上报的数据类型为AmbientTemperatureResponse。 |
-### LINEAR_ACCELEROMETER9+
+**示例:**
-once(type: SensorType.SENSOR_TYPE_ID_LINEAR_ACCELEROMETER,callback:Callback<LinearAccelerometerResponse>): void
+```js
+try {
+ sensor.once(sensor.SensorId.AMBIENT_TEMPERATURE, function(data) {
+ console.info('Temperature: ' + data.temperature);
+ }
+ );
+} catch(err) {
+ console.info('once fail, errCode: ' + err.code + ' ,msg: ' + err.message);
+}
+```
-订阅一次线性加速度传感器数据。
+### BAROMETER9+
-**需要权限**:ohos.permission.ACCELEROMETER
+once(type: SensorId.BAROMETER, callback: Callback<BarometerResponse>): void
+
+订阅一次气压计传感器数据。
**系统能力**:SystemCapability.Sensors.Sensor
**参数:**
-| 参数名 | 类型 | 必填 | 说明 |
-| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
-| type | [SensorType](#sensortype) | 是 | 线性加速度传感器类型为SENSOR_TYPE_ID_LINEAR_ACCELEROMETER。 |
-| callback | Callback<[LinearAccelerometerResponse](#linearaccelerometerresponse)> | 是 | 注册一次线性加速度传感器的回调函数,上报的数据类型为LinearAccelerometerResponse。 |
-**示例:**
- ```js
- sensor.once(sensor.SensorType.SENSOR_TYPE_ID_LINEAR_ACCELEROMETER, function(data) {
- console.info('X-coordinate component: ' + data.x);
- console.info('Y-coordinate component: ' + data.y);
- console.info('Z-coordinate component: ' + data.z);
- }
- );
- ```
+| 参数名 | 类型 | 必填 | 说明 |
+| -------- | ------------------------------------------------------- | ---- | ------------------------------------------------------------ |
+| type | [SensorId](#sensorid9) | 是 | 气压计传感器类型为BAROMETER。 |
+| callback | Callback<[BarometerResponse](#barometerresponse)> | 是 | 注册一次气压计传感器的回调函数,上报的数据类型为BarometerResponse。 |
+
+**示例:**
-### ACCELEROMETER_UNCALIBRATED
+```js
+try {
+ sensor.once(sensor.SensorType.SENSOR_TYPE_ID_BAROMETER, function(data) {
+ console.info('Atmospheric pressure: ' + data.pressure);
+ }
+ );
+} catch(err) {
+ console.info('once fail, errCode: ' + err.code + ' ,msg: ' + err.message);
+}
+```
-once(type: SensorType.SENSOR_TYPE_ID_ACCELEROMETER_UNCALIBRATED,callback: Callback<AccelerometerUncalibratedResponse>): void
+### GRAVITY9+
-监听未校准加速度传感器的数据变化一次。
+once(type: SensorId.GRAVITY, callback: Callback<GravityResponse>): void
-**需要权限**:ohos.permission.ACCELEROMETER
+订阅一次重力传感器数据。
**系统能力**:SystemCapability.Sensors.Sensor
-**参数:**
-| 参数名 | 类型 | 必填 | 说明 |
-| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
-| type | [SensorType](#sensortype) | 是 | 未校准加速度传感器类型为SENSOR_TYPE_ID_ACCELEROMETER_UNCALIBRATED。 |
-| callback | Callback<[AccelerometerUncalibratedResponse](#accelerometeruncalibratedresponse)> | 是 | 注册一次未校准加速度传感器的回调函数,上报的数据类型为AccelerometerUncalibratedResponse。 |
+**参数:**
-**示例:**
- ```
- sensor.once(sensor.SensorType.SENSOR_TYPE_ID_ACCELEROMETER_UNCALIBRATED, function(data) {
- console.info('X-coordinate component: ' + data.x);
- console.info('Y-coordinate component: ' + data.y);
- console.info('Z-coordinate component: ' + data.z);
- console.info('X-coordinate bias: ' + data.biasX);
- console.info('Y-coordinate bias: ' + data.biasY);
- console.info('Z-coordinate bias: ' + data.biasZ);
- }
- );
- ```
+| 参数名 | 类型 | 必填 | 说明 |
+| -------- | --------------------------------------------------- | ---- | ------------------------------------------------------------ |
+| type | [SensorId](#sensorid9) | 是 | 重力传感器类型为GRAVITY。 |
+| callback | Callback<[GravityResponse](#gravityresponse)> | 是 | 注册一次重力传感器的回调函数,上报的数据类型为GravityResponse。 |
-### GRAVITY
+**示例:**
-once(type: SensorType.SENSOR_TYPE_ID_GRAVITY, callback: Callback<GravityResponse>): void
+```js
+try {
+ sensor.once(sensor.SensorId.GRAVITY, function(data) {
+ console.info('X-coordinate component: ' + data.x);
+ console.info('Y-coordinate component: ' + data.y);
+ console.info('Z-coordinate component: ' + data.z);
+ }
+ );
+} catch(err) {
+ console.info('once fail, errCode: ' + err.code + ' ,msg: ' + err.message);
+}
+```
-监听重力传感器的数据变化一次。
+### GYROSCOPE9+
+
+once(type: SensorId.GYROSCOPE, callback: Callback<GyroscopeResponse>): void
+
+订阅一次陀螺仪传感器数据。
+
+**需要权限**:ohos.permission.GYROSCOPE
**系统能力**:SystemCapability.Sensors.Sensor
**参数:**
-| 参数名 | 类型 | 必填 | 说明 |
-| -------- | ---------------------------------------- | ---- | --------------------------------------- |
-| type | [SensorType](#sensortype) | 是 | 重力传感器类型为SENSOR_TYPE_ID_GRAVITY。 |
-| callback | Callback<[GravityResponse](#gravityresponse)> | 是 | 注册一次重力传感器的回调函数,上报的数据类型为GravityResponse。 |
-**示例:**
- ```js
- sensor.once(sensor.SensorType.SENSOR_TYPE_ID_GRAVITY, function(data) {
- console.info('X-coordinate component: ' + data.x);
- console.info('Y-coordinate component: ' + data.y);
- console.info('Z-coordinate component: ' + data.z);
- }
- );
- ```
+| 参数名 | 类型 | 必填 | 说明 |
+| -------- | ------------------------------------------------------- | ---- | ------------------------------------------------------------ |
+| type | [SensorId](#sensorid9) | 是 | 陀螺仪传感器类型为GYROSCOPE。 |
+| callback | Callback<[GyroscopeResponse](#gyroscoperesponse)> | 是 | 注册一次陀螺仪传感器的回调函数,上报的数据类型为GyroscopeResponse。 |
-### GYROSCOPE
+**示例:**
-once(type: SensorType.SENSOR_TYPE_ID_GYROSCOPE, callback: Callback<GyroscopeResponse>): void
+```js
+try {
+ sensor.once(sensor.SensorId.GYROSCOPE, function(data) {
+ console.info('X-coordinate component: ' + data.x);
+ console.info('Y-coordinate component: ' + data.y);
+ console.info('Z-coordinate component: ' + data.z);
+ }
+ );
+} catch(err) {
+ console.info('once fail, errCode: ' + err.code + ' ,msg: ' + err.message);
+}
+```
-监听陀螺仪传感器的数据变化一次。
+### GYROSCOPE_UNCALIBRATED9+
-**需要权限**:ohos.permission.GYROSCOPE
+once(type: SensorId.GYROSCOPE_UNCALIBRATED, callback: Callback<GyroscopeUncalibratedResponse>): void
-**系统能力**:SystemCapability.Sensors.Sensor
+一次订阅未校准的陀螺仪传感器数据。
+
+**需要权限**:ohos.permission.GYROSCOPE
+
+**系统能力**:SystemCapability.Sensors.Sensor
**参数:**
-| 参数名 | 类型 | 必填 | 说明 |
-| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
-| type | [SensorType](#sensortype) | 是 | 陀螺仪传感器类型为SENSOR_TYPE_ID_GYROSCOPE。 |
-| callback | Callback<[GyroscopeResponse](#gyroscoperesponse)> | 是 | 注册一次陀螺仪传感器的回调函数,上报的数据类型为GyroscopeResponse。 |
-**示例:**
- ```js
- sensor.once(sensor.SensorType.SENSOR_TYPE_ID_GYROSCOPE, function(data) {
- console.info('X-coordinate component: ' + data.x);
- console.info('Y-coordinate component: ' + data.y);
- console.info('Z-coordinate component: ' + data.z);
- }
- );
- ```
+| 参数名 | 类型 | 必填 | 说明 |
+| -------- | ------------------------------------------------------------ | ---- | ------------------------------------------------------------ |
+| type | [SensorId](#sensorid9) | 是 | 未校准陀螺仪传感器类型为GYROSCOPE_UNCALIBRATED。 |
+| callback | Callback<[GyroscopeUncalibratedResponse](#gyroscopeuncalibratedresponse)> | 是 | 注册一次未校准陀螺仪传感器的回调函数,上报的数据类型为GyroscopeUncalibratedResponse。 |
-### GYROSCOPE_UNCALIBRATED
+**示例:**
-once(type: SensorType.SENSOR_TYPE_ID_GYROSCOPE_UNCALIBRATED,callback: Callback<GyroscopeUncalibratedResponse>): void
+```js
+try {
+ sensor.once(sensor.SensorId.GYROSCOPE_UNCALIBRATED, function(data) {
+ console.info('X-coordinate component: ' + data.x);
+ console.info('Y-coordinate component: ' + data.y);
+ console.info('Z-coordinate component: ' + data.z);
+ console.info('X-coordinate bias: ' + data.biasX);
+ console.info('Y-coordinate bias: ' + data.biasY);
+ console.info('Z-coordinate bias: ' + data.biasZ);
+ }
+ );
+} catch(err) {
+ console.info('once fail, errCode: ' + err.code + ' ,msg: ' + err.message);
+}
+```
-监听未校准陀螺仪传感器的数据变化一次。
+### HALL9+
-**需要权限**:ohos.permission.GYROSCOPE
+once(type: SensorId.HALL, callback: Callback<HallResponse>): void
-**系统能力**:SystemCapability.Sensors.Sensor
+订阅一次霍尔传感器数据。
+
+**系统能力**:SystemCapability.Sensors.Sensor
**参数:**
-| 参数名 | 类型 | 必填 | 说明 |
-| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
-| type | [SensorType](#sensortype) | 是 | 未校准陀螺仪传感器类型为SENSOR_TYPE_ID_GYROSCOPE_UNCALIBRATED。 |
-| callback | Callback<[GyroscopeUncalibratedResponse](#gyroscopeuncalibratedresponse)> | 是 | 注册一次未校准陀螺仪传感器的回调函数,上报的数据类型为GyroscopeUncalibratedResponse。 |
-**示例:**
- ```js
- sensor.once(sensor.SensorType.SENSOR_TYPE_ID_GYROSCOPE_UNCALIBRATED, function(data) {
- console.info('X-coordinate component: ' + data.x);
- console.info('Y-coordinate component: ' + data.y);
- console.info('Z-coordinate component: ' + data.z);
- console.info('X-coordinate bias: ' + data.biasX);
- console.info('Y-coordinate bias: ' + data.biasY);
- console.info('Z-coordinate bias: ' + data.biasZ);
- }
- );
- ```
+| 参数名 | 类型 | 必填 | 说明 |
+| -------- | --------------------------------------------- | ---- | ------------------------------------------------------------ |
+| type | [SensorId](#sensorid9) | 是 | 霍尔传感器类型为HALL。 |
+| callback | Callback<[HallResponse](#hallresponse)> | 是 | 注册一次霍尔传感器的回调函数,上报的数据类型为HallResponse。 |
-### SIGNIFICANT_MOTION
+**示例:**
-once(type: SensorType.SENSOR_TYPE_ID_SIGNIFICANT_MOTION,callback: Callback<SignificantMotionResponse>): void
+```js
+try {
+ sensor.once(sensor.SensorId.HALL, function(data) {
+ console.info('Status: ' + data.status);
+ }
+ );
+} catch(err) {
+ console.info('once fail, errCode: ' + err.code + ' ,msg: ' + err.message);
+}
+```
-监听有效运动传感器的数据变化一次。
+### HEART_RATE9+
-**系统能力**:SystemCapability.Sensors.Sensor
+once(type: SensorId.HEART_RATE, callback: Callback<HeartRateResponse>): void
+
+订阅一次心率传感器数据。
+
+**需要权限**:ohos.permission.READ_HEALTH_DATA
+
+**系统能力**:SystemCapability.Sensors.Sensor
**参数:**
-| 参数名 | 类型 | 必填 | 说明 |
-| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
-| type | [SensorType](#sensortype) | 是 | 有效运动传感器类型为SENSOR_TYPE_ID_SIGNIFICANT_MOTION。 |
-| callback | Callback<[SignificantMotionResponse](#significantmotionresponse)> | 是 | 注册一次有效运动传感器的回调函数,上报的数据类型为SignificantMotionResponse。 |
-**示例:**
- ```js
- sensor.once(sensor.SensorType.SENSOR_TYPE_ID_SIGNIFICANT_MOTION, function(data) {
- console.info('Scalar data: ' + data.scalar);
- }
- );
- ```
+| 参数名 | 类型 | 必填 | 说明 |
+| -------- | ------------------------------------------------------- | ---- | ------------------------------------------------------------ |
+| type | [SensorId](#sensorid9) | 是 | 心率传感器类型为HEART_RATE。 |
+| callback | Callback<[HeartRateResponse](#heartrateresponse)> | 是 | 注册一次心率传感器的回调函数,上报的数据类型为HeartRateResponse。 |
-### PEDOMETER_DETECTION
+**示例:**
-once(type: SensorType.SENSOR_TYPE_ID_PEDOMETER_DETECTION,callback: Callback<PedometerDetectionResponse>): void
+```js
+try {
+ sensor.once(sensor.SensorId.HEART_BEAT_RATE, function(data) {
+ console.info('Heart rate: ' + data.heartRate);
+ }
+ );
+} catch(err) {
+ console.info('once fail, errCode: ' + err.code + ' ,msg: ' + err.message);
+}
+```
-监听计步检测传感器数据变化一次。
+### HUMIDITY9+
-**需要权限**:ohos.permission.ACTIVITY_MOTION
+once(type: SensorId.HUMIDITY, callback: Callback<HumidityResponse>): void
-**系统能力**:SystemCapability.Sensors.Sensor
+订阅一次湿度传感器数据。
+
+**系统能力**:SystemCapability.Sensors.Sensor
**参数:**
-| 参数名 | 类型 | 必填 | 说明 |
-| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
-| type | [SensorType](#sensortype) | 是 | 计步检测传感器类型为SENSOR_TYPE_ID_PEDOMETER_DETECTION。 |
-| callback | Callback<[PedometerDetectionResponse](#pedometerdetectionresponse)> | 是 | 注册一次计步检测传感器的回调函数,上报的数据类型为PedometerDetectionResponse。 |
-**示例:**
- ```js
- sensor.once(sensor.SensorType.SENSOR_TYPE_ID_PEDOMETER_DETECTION, function(data) {
- console.info('Scalar data: ' + data.scalar);
- }
- );
- ```
+| 参数名 | 类型 | 必填 | 说明 |
+| -------- | ----------------------------------------------------- | ---- | ------------------------------------------------------------ |
+| type | [SensorId](#sensorid9) | 是 | 湿度传感器类型为HUMIDITY。 |
+| callback | Callback<[HumidityResponse](#humidityresponse)> | 是 | 注册一次湿度传感器的回调函数,上报的数据类型为HumidityResponse。 |
-### PEDOMETER
+**示例:**
-once(type: SensorType.SENSOR_TYPE_ID_PEDOMETER, callback: Callback<PedometerResponse>): void
+```js
+try {
+ sensor.once(sensor.SensorId.HUMIDITY, function(data) {
+ console.info('Humidity: ' + data.humidity);
+ }
+ );
+} catch(err) {
+ console.info('once fail, errCode: ' + err.code + ' ,msg: ' + err.message);
+}
+```
-监听计步器传感器数据变化一次。
+### LINEAR_ACCELERATION9+
-**需要权限**:ohos.permission.ACTIVITY_MOTION
+once(type: SensorId.LINEAR_ACCELEROMETER, callback: Callback<LinearAccelerometerResponse>): void
-**系统能力**:SystemCapability.Sensors.Sensor
+订阅一次线性加速度传感器数据。
+
+**需要权限**:ohos.permission.ACCELEROMETER
+
+**系统能力**:SystemCapability.Sensors.Sensor
**参数:**
-| 参数名 | 类型 | 必填 | 说明 |
-| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
-| type | [SensorType](#sensortype) | 是 | 计步传感器类型为SENSOR_TYPE_ID_PEDOMETER。 |
-| callback | Callback<[PedometerResponse](#pedometerresponse)> | 是 | 注册一次计步传感器的回调函数,上报的数据类型为PedometerResponse。 |
-**示例:**
- ```js
- sensor.once(sensor.SensorType.SENSOR_TYPE_ID_PEDOMETER, function(data) {
- console.info('Steps: ' + data.steps);
- }
- );
- ```
+| 参数名 | 类型 | 必填 | 说明 |
+| -------- | ------------------------------------------------------------ | ---- | ------------------------------------------------------------ |
+| type | [SensorId](#sensorid9) | 是 | 线性加速度传感器类型为LINEAR_ACCELEROMETER。 |
+| callback | Callback<[LinearAccelerometerResponse](#linearaccelerometerresponse)> | 是 | 注册一次线性加速度传感器的回调函数,上报的数据类型为LinearAccelerometerResponse。 |
-### AMBIENT_TEMPERATURE
+**示例:**
-once(type: SensorType.SENSOR_TYPE_ID_AMBIENT_TEMPERATURE,callback: Callback<AmbientTemperatureResponse>): void
+```js
+try {
+ sensor.once(sensor.SensorId.LINEAR_ACCELEROMETER, function(data) {
+ console.info('X-coordinate component: ' + data.x);
+ console.info('Y-coordinate component: ' + data.y);
+ console.info('Z-coordinate component: ' + data.z);
+ }
+ );
+} catch(err) {
+ console.info('once fail, errCode: ' + err.code + ' ,msg: ' + err.message);
+}
+```
-监听环境温度传感器数据变化一次。
+### MAGNETIC_FIELD9+
-**系统能力**:SystemCapability.Sensors.Sensor
+once(type: SensorId.MAGNETIC_FIELD, callback: Callback<MagneticFieldResponse>): void
-**参数:**
-| 参数名 | 类型 | 必填 | 说明 |
-| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
-| type | [SensorType](#sensortype) | 是 | 环境温度传感器类型为SENSOR_TYPE_ID_AMBIENT_TEMPERATURE。 |
-| callback | Callback<[AmbientTemperatureResponse](#ambienttemperatureresponse)> | 是 | 注册一次环境温度传感器的回调函数,上报的数据类型为AmbientTemperatureResponse。 |
+订阅一次磁场传感器数据。
-**示例:**
- ```js
- sensor.once(sensor.SensorType.SENSOR_TYPE_ID_AMBIENT_TEMPERATURE, function(data) {
- console.info('Temperature: ' + data.temperature);
- }
- );
- ```
+**系统能力**:SystemCapability.Sensors.Sensor
-### MAGNETIC_FIELD
+**参数:**
-once(type: SensorType.SENSOR_TYPE_ID_MAGNETIC_FIELD, callback: Callback<MagneticFieldResponse>): void
+| 参数名 | 类型 | 必填 | 说明 |
+| -------- | ------------------------------------------------------------ | ---- | ------------------------------------------------------------ |
+| type | [SensorId](#sensorid9) | 是 | 磁场传感器类型为MAGNETIC_FIELD。 |
+| callback | Callback<[MagneticFieldResponse](#magneticfieldresponse)> | 是 | 注册一次磁场传感器的回调函数,上报的数据类型为MagneticFieldResponse。 |
-监听磁场传感器数据变化一次。
+**示例:**
+
+```js
+try {
+ sensor.once(sensor.SensorId.MAGNETIC_FIELD, function(data) {
+ console.info('X-coordinate component: ' + data.x);
+ console.info('Y-coordinate component: ' + data.y);
+ console.info('Z-coordinate component: ' + data.z);
+ }
+ );
+} catch(err) {
+ console.info('once fail, errCode: ' + err.code + ' ,msg: ' + err.message);
+}
+```
+
+### MAGNETIC_FIELD_UNCALIBRATED9+
+
+once(type: SensorId.MAGNETIC_FIELD_UNCALIBRATED, callback: Callback<MagneticFieldUncalibratedResponse>): void
+
+订阅一次未经校准的磁场传感器数据。
**系统能力**:SystemCapability.Sensors.Sensor
-**参数:**
+**参数:**
-| 参数名 | 类型 | 必填 | 说明 |
-| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
-| type | [SensorType](#sensortype) | 是 | 磁场传感器类型为SENSOR_TYPE_ID_MAGNETIC_FIELD。 |
-| callback | Callback<[MagneticFieldResponse](#magneticfieldresponse)> | 是 | 注册一次磁场传感器的回调函数,上报的数据类型为MagneticFieldResponse。 |
+| 参数名 | 类型 | 必填 | 说明 |
+| -------- | ------------------------------------------------------------ | ---- | ------------------------------------------------------------ |
+| type | [SensorId](#sensorid9) | 是 | 未校准磁场传感器类型为MAGNETIC_FIELD_UNCALIBRATED。 |
+| callback | Callback<[MagneticFieldUncalibratedResponse](#magneticfielduncalibratedresponse)> | 是 | 注册一次未校准磁场传感器的回调函数,上报的数据类型为MagneticFieldUncalibratedResponse。 |
-**示例:**
- ```js
- sensor.once(sensor.SensorType.SENSOR_TYPE_ID_MAGNETIC_FIELD, function(data) {
- console.info('X-coordinate component: ' + data.x);
- console.info('Y-coordinate component: ' + data.y);
- console.info('Z-coordinate component: ' + data.z);
- }
- );
- ```
+**示例:**
+
+```js
+try {
+ sensor.once(sensor.SensorId.MAGNETIC_FIELD_UNCALIBRATED, function(data) {
+ console.info('X-coordinate component: ' + data.x);
+ console.info('Y-coordinate component: ' + data.y);
+ console.info('Z-coordinate component: ' + data.z);
+ console.info('X-coordinate bias: ' + data.biasX);
+ console.info('Y-coordinate bias: ' + data.biasY);
+ console.info('Z-coordinate bias: ' + data.biasZ);
+ }
+ );
+} catch(err) {
+ console.info('once fail, errCode: ' + err.code + ' ,msg: ' + err.message);
+}
+```
-### MAGNETIC_FIELD_UNCALIBRATED
+### ORIENTATION9+
-once(type: SensorType.SENSOR_TYPE_ID_MAGNETIC_FIELD_UNCALIBRATED,callback: Callback<MagneticFieldUncalibratedResponse>): void
+once(type: SensorId.ORIENTATION, callback: Callback<OrientationResponse>): void
-监听未校准磁场传感器数据变化一次。
+订阅一次定向传感器数据。
**系统能力**:SystemCapability.Sensors.Sensor
**参数:**
-| 参数名 | 类型 | 必填 | 说明 |
-| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
-| type | [SensorType](#sensortype) | 是 | 未校准磁场传感器类型为SENSOR_TYPE_ID_MAGNETIC_FIELD_UNCALIBRATED。 |
-| callback | Callback<[MagneticFieldUncalibratedResponse](#magneticfielduncalibratedresponse)> | 是 | 注册一次未校准磁场传感器的回调函数,上报的数据类型为MagneticFieldUncalibratedResponse。 |
-**示例:**
- ```js
- sensor.once(sensor.SensorType.SENSOR_TYPE_ID_MAGNETIC_FIELD_UNCALIBRATED, function(data) {
- console.info('X-coordinate component: ' + data.x);
- console.info('Y-coordinate component: ' + data.y);
- console.info('Z-coordinate component: ' + data.z);
- console.info('X-coordinate bias: ' + data.biasX);
- console.info('Y-coordinate bias: ' + data.biasY);
- console.info('Z-coordinate bias: ' + data.biasZ);
- }
- );
- ```
+| 参数名 | 类型 | 必填 | 说明 |
+| -------- | ----------------------------------------------------------- | ---- | ------------------------------------------------------------ |
+| type | [SensorId](#sensorid9) | 是 | 方向传感器类型为ORIENTATION。 |
+| callback | Callback<[OrientationResponse](#orientationresponse)> | 是 | 注册一次方向传感器的回调函数,上报的数据类型为OrientationResponse。 |
-### PROXIMITY
+**示例:**
-once(type: SensorType.SENSOR_TYPE_ID_PROXIMITY, callback: Callback<ProximityResponse>): void
+```js
+try {
+ sensor.once(sensor.SensorId.ORIENTATION, function(data) {
+ console.info('The device rotates at an angle around the X axis: ' + data.beta);
+ console.info('The device rotates at an angle around the Y axis: ' + data.gamma);
+ console.info('The device rotates at an angle around the Z axis: ' + data.alpha);
+ }
+ );
+} catch(err) {
+ console.info('once fail, errCode: ' + err.code + ' ,msg: ' + err.message);
+}
+```
-监听接近光传感器数据变化一次。
+### PEDOMETER9+
-**系统能力**:SystemCapability.Sensors.Sensor
+once(type: SensorId.PEDOMETER, callback: Callback<PedometerResponse>): void
-**参数:**
+订阅一次计步器传感器数据。
-| 参数名 | 类型 | 必填 | 说明 |
-| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
-| type | [SensorType](#sensortype) | 是 | 接近光传感器类型为SENSOR_TYPE_ID_PROXIMITY。 |
-| callback | Callback<[ProximityResponse](#proximityresponse)> | 是 | 注册一次接近光传感器的回调函数,上报的数据类型为ProximityResponse。 |
+**需要权限**:ohos.permission.ACTIVITY_MOTION
-**示例:**
- ```js
- sensor.once(sensor.SensorType.SENSOR_TYPE_ID_PROXIMITY, function(data) {
- console.info('Distance: ' + data.distance);
- }
- );
- ```
+**系统能力**:SystemCapability.Sensors.Sensor
-### HUMIDITY
+**参数:**
-once(type: SensorType.SENSOR_TYPE_ID_HUMIDITY, callback: Callback<HumidityResponse>): void
+| 参数名 | 类型 | 必填 | 说明 |
+| -------- | ------------------------------------------------------- | ---- | ------------------------------------------------------------ |
+| type | [SensorId](#sensorid9) | 是 | 计步传感器类型为PEDOMETER。 |
+| callback | Callback<[PedometerResponse](#pedometerresponse)> | 是 | 注册一次计步传感器的回调函数,上报的数据类型为PedometerResponse。 |
-监听湿度传感器数据变化一次。
+**示例:**
-**系统能力**:SystemCapability.Sensors.Sensor
+```js
+try {
+ sensor.once(sensor.SensorId.PEDOMETER, function(data) {
+ console.info('Steps: ' + data.steps);
+ }
+ );
+} catch(err) {
+ console.info('once fail, errCode: ' + err.code + ' ,msg: ' + err.message);
+}
+```
-**参数:**
-| 参数名 | 类型 | 必填 | 说明 |
-| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
-| type | [SensorType](#sensortype) | 是 | 湿度传感器类型为SENSOR_TYPE_ID_HUMIDITY。 |
-| callback | Callback<[HumidityResponse](#humidityresponse)> | 是 | 注册一次湿度传感器的回调函数,上报的数据类型为HumidityResponse。 |
+### PEDOMETER_DETECTION9+
-**示例:**
- ```js
- sensor.once(sensor.SensorType.SENSOR_TYPE_ID_HUMIDITY, function(data) {
- console.info('Humidity: ' + data.humidity);
- }
- );
- ```
+once(type: SensorId.PEDOMETER_DETECTION, callback: Callback<PedometerDetectionResponse>): void
-### BAROMETER
+订阅一次计步器检测传感器数据。
-once(type: SensorType.SENSOR_TYPE_ID_BAROMETER, callback: Callback<BarometerResponse>): void
+**需要权限**:ohos.permission.ACTIVITY_MOTION
-监听气压计传感器数据变化一次。
+**系统能力**:SystemCapability.Sensors.Sensor
-**系统能力**:SystemCapability.Sensors.Sensor
+**参数:**
-**参数:**
-| 参数名 | 类型 | 必填 | 说明 |
-| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
-| type | [SensorType](#sensortype) | 是 | 气压计传感器类型为SENSOR_TYPE_ID_BAROMETER。 |
-| callback | Callback<[BarometerResponse](#barometerresponse)> | 是 | 注册一次气压计传感器的回调函数,上报的数据类型为BarometerResponse。 |
+| 参数名 | 类型 | 必填 | 说明 |
+| -------- | ------------------------------------------------------------ | ---- | ------------------------------------------------------------ |
+| type | [SensorId](#sensorid9) | 是 | 计步检测传感器类型为PEDOMETER_DETECTION。 |
+| callback | Callback<[PedometerDetectionResponse](#pedometerdetectionresponse)> | 是 | 注册一次计步检测传感器的回调函数,上报的数据类型为PedometerDetectionResponse。 |
-**示例:**
- ```js
- sensor.once(sensor.SensorType.SENSOR_TYPE_ID_BAROMETER, function(data) {
- console.info('Atmospheric pressure: ' + data.pressure);
- }
- );
- ```
+**示例:**
+
+```js
+try {
+ sensor.once(sensor.SensorId.PEDOMETER_DETECTION, function(data) {
+ console.info('Scalar data: ' + data.scalar);
+ }
+ );
+} catch(err) {
+ console.info('once fail, errCode: ' + err.code + ' ,msg: ' + err.message);
+}
+```
-### HALL
+### PROXIMITY9+
-once(type: SensorType.SENSOR_TYPE_ID_HALL, callback: Callback<HallResponse>): void
+once(type: SensorId.PROXIMITY, callback: Callback<ProximityResponse>): void
-监听霍尔传感器数据变化一次。
+订阅一次接近传感器数据。
**系统能力**:SystemCapability.Sensors.Sensor
-**参数:**
-| 参数名 | 类型 | 必填 | 说明 |
-| -------- | ---------------------------------------- | ---- | ------------------------------------ |
-| type | [SensorType](#sensortype) | 是 | 霍尔传感器类型为SENSOR_TYPE_ID_HALL。 |
-| callback | Callback<[HallResponse](#hallresponse)> | 是 | 注册一次霍尔传感器的回调函数,上报的数据类型为HallResponse。 |
+**参数:**
-**示例:**
- ```js
- sensor.once(sensor.SensorType.SENSOR_TYPE_ID_HALL, function(data) {
- console.info('Status: ' + data.status);
- }
- );
- ```
+| 参数名 | 类型 | 必填 | 说明 |
+| -------- | ------------------------------------------------------- | ---- | ------------------------------------------------------------ |
+| type | [SensorId](#sensorid9) | 是 | 接近光传感器类型为PROXIMITY。 |
+| callback | Callback<[ProximityResponse](#proximityresponse)> | 是 | 注册一次接近光传感器的回调函数,上报的数据类型为ProximityResponse。 |
+
+**示例:**
+
+```js
+try {
+ sensor.once(sensor.SensorId.PROXIMITY, function(data) {
+ console.info('Distance: ' + data.distance);
+ }
+ );
+} catch(err) {
+ console.info('once fail, errCode: ' + err.code + ' ,msg: ' + err.message);
+}
+```
-### AMBIENT_LIGHT
+### ROTATION_VECTOR9+
-once(type: SensorType.SENSOR_TYPE_ID_AMBIENT_LIGHT, callback: Callback<LightResponse>): void
+once(type: SensorId.ROTATION_VECTOR, callback: Callback<RotationVectorResponse>): void
-监听环境光传感器数据变化一次。
+订阅一次旋转矢量传感器数据。
**系统能力**:SystemCapability.Sensors.Sensor
-**参数:**
+**参数:**
-| 参数名 | 类型 | 必填 | 说明 |
-| -------- | ---------------------------------------- | ---- | -------------------------------------- |
-| type | [SensorType](#sensortype) | 是 | 环境光传感器类型为SENSOR_TYPE_ID_AMBIENT_LIGHT。 |
-| callback | Callback<[LightResponse](#lightresponse)> | 是 | 注册一次环境光传感器的回调函数,上报的数据类型为LightResponse。 |
+| 参数名 | 类型 | 必填 | 说明 |
+| -------- | ------------------------------------------------------------ | ---- | ------------------------------------------------------------ |
+| type | [SensorId](#sensorid9) | 是 | 旋转矢量传感器类型为ROTATION_VECTOR。 |
+| callback | Callback<[RotationVectorResponse](#rotationvectorresponse)> | 是 | 注册一次旋转矢量传感器的回调函数,上报的数据类型为RotationVectorResponse。 |
**示例:**
- ```js
- sensor.once(sensor.SensorType.SENSOR_TYPE_ID_AMBIENT_LIGHT, function(data) {
- console.info(' Illumination: ' + data.intensity);
- }
- );
- ```
+```js
+try {
+ sensor.once(sensor.SensorId.ROTATION_VECTOR, function(data) {
+ console.info('X-coordinate component: ' + data.x);
+ console.info('Y-coordinate component: ' + data.y);
+ console.info('Z-coordinate component: ' + data.z);
+ console.info('Scalar quantity: ' + data.w);
+ }
+ );
+} catch(err) {
+ console.info('once fail, errCode: ' + err.code + ' ,msg: ' + err.message);
+}
+```
-### ORIENTATION
+### SIGNIFICANT_MOTION9+
-once(type: SensorType.SENSOR_TYPE_ID_ORIENTATION, callback: Callback<OrientationResponse>): void
+once(type: SensorId.SIGNIFICANT_MOTION, callback: Callback<SignificantMotionResponse>): void
-监听方向传感器数据变化一次。
+订阅一次重要的运动传感器数据。
**系统能力**:SystemCapability.Sensors.Sensor
-**参数:**
-| 参数名 | 类型 | 必填 | 说明 |
-| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
-| type | [SensorType](#sensortype) | 是 | 方向传感器类型为SENSOR_TYPE_ID_ORIENTATION。 |
-| callback | Callback<[OrientationResponse](#orientationresponse)> | 是 | 注册一次方向传感器的回调函数,上报的数据类型为OrientationResponse。 |
+**参数:**
+
+| 参数名 | 类型 | 必填 | 说明 |
+| -------- | ------------------------------------------------------------ | ---- | ------------------------------------------------------------ |
+| type | [SensorId](#sensorid9) | 是 | 有效运动传感器类型为SIGNIFICANT_MOTION。 |
+| callback | Callback<[SignificantMotionResponse](#significantmotionresponse)> | 是 | 注册一次有效运动传感器的回调函数,上报的数据类型为SignificantMotionResponse。 |
**示例:**
- ```js
- sensor.once(sensor.SensorType.SENSOR_TYPE_ID_ORIENTATION, function(data) {
- console.info('The device rotates at an angle around the X axis: ' + data.beta);
- console.info('The device rotates at an angle around the Y axis: ' + data.gamma);
- console.info('The device rotates at an angle around the Z axis: ' + data.alpha);
- }
- );
- ```
-### ROTATION_VECTOR
+```js
+try {
+ sensor.once(sensor.SensorId.SIGNIFICANT_MOTION, function(data) {
+ console.info('Scalar data: ' + data.scalar);
+ }
+ );
+} catch(err) {
+ console.info('once fail, errCode: ' + err.code + ' ,msg: ' + err.message);
+}
+```
+
+### WEAR_DETECTION9+
-once(type: SensorType.SENSOR_TYPE_ID_ROTATION_VECTOR, callback: Callback<RotationVectorResponse>): void
+once(type: SensorId.WEAR_DETECTION, callback: Callback<WearDetectionResponse>): void
-监听旋转矢量传感器数据变化一次。
+订阅一次磨损检测传感器数据。
**系统能力**:SystemCapability.Sensors.Sensor
-**参数:**
-| 参数名 | 类型 | 必填 | 说明 |
-| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
-| type | [SensorType](#sensortype) | 是 | 旋转矢量传感器类型为SENSOR_TYPE_ID_ROTATION_VECTOR。 |
-| callback | Callback<[RotationVectorResponse](#rotationvectorresponse)> | 是 | 注册一次旋转矢量传感器的回调函数,上报的数据类型为RotationVectorResponse。 |
+**参数:**
+
+| 参数名 | 类型 | 必填 | 说明 |
+| -------- | ------------------------------------------------------------ | ---- | ------------------------------------------------------------ |
+| type | [SensorId](#sensorid9) | 是 | 佩戴检测传感器类型为WEAR_DETECTION。 |
+| callback | Callback<[WearDetectionResponse](#weardetectionresponse)> | 是 | 注册一次穿戴检测传感器的回调函数,上报的数据类型为WearDetectionResponse。 |
**示例:**
- ```js
- sensor.once(sensor.SensorType.SENSOR_TYPE_ID_ROTATION_VECTOR, function(data) {
- console.info('X-coordinate component: ' + data.x);
- console.info('Y-coordinate component: ' + data.y);
- console.info('Z-coordinate component: ' + data.z);
- console.info('Scalar quantity: ' + data.w);
- }
- );
- ```
-### HEART_RATE(deprecated)
+```js
+try {
+ sensor.once(sensor.SensorId.WEAR_DETECTION, function(data) {
+ console.info("Wear status: "+ data.value);
+ }
+ );
+} catch(err) {
+ console.info('once fail, errCode: ' + err.code + ' ,msg: ' + err.message);
+}
+```
-once(type: SensorType.SENSOR_TYPE_ID_HEART_RATE, callback: Callback<HeartRateResponse>): void
+## sensor.off9+
-监听心率传感器数据变化一次。
+### ACCELEROMETER9+
-从API Version9开始该接口不再维护,请使用[sensor.once.HEART_BEAT_RATE](#heart_beat_rate9)
+off(type: SensorId.ACCELEROMETER, callback?: Callback<AccelerometerResponse>): void
-**需要权限**:ohos.permission.HEART_RATE
+取消订阅加速度计传感器数据。
+
+**需要权限**:ohos.permission.ACCELEROMETER
**系统能力**:SystemCapability.Sensors.Sensor
-**参数:**
+**参数:**
-| 参数名 | 类型 | 必填 | 说明 |
-| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
-| type | [SensorType](#sensortype) | 是 | 心率传感器类型为SENSOR_TYPE_ID_HEART_RATE。 |
-| callback | Callback<[HeartRateResponse](#heartrateresponse)> | 是 | 注册一次心率传感器的回调函数,上报的数据类型为HeartRateResponse。 |
+| 参数名 | 类型 | 必填 | 说明 |
+| -------- | ------------------------------------------------------------ | ---- | ------------------------------------------------------------ |
+| type | [SensorId](#sensorid9) | 是 | 要取消订阅的加速度传感器类型为ACCELEROMETER。 |
+| callback | Callback<[AccelerometerResponse](#accelerometerresponse)> | 是 | 取消注册加速度传感器的回调函数,上报的数据类型为AccelerometerResponse。 |
-### HEART_BEAT_RATE9+
+**示例:**
+
+```js
+try {
+ function callback(data) {
+ console.info('x-coordinate component: ' + data.x);
+ console.info('Y-coordinate component: ' + data.y);
+ console.info('Z-coordinate component: ' + data.z);
+ }
+ sensor.off(sensor.SensorId.ACCELEROMETER, callback);
+} catch(err) {
+ console.info('off fail, errCode: ' + err.code + ' ,msg: ' + err.message);
+}
+```
-once(type: SensorType.SENSOR_TYPE_ID_HEART_BEAT_RATE, callback: Callback<HeartRateResponse>): void
+### ACCELEROMETER_UNCALIBRATED9+
-订阅一次心率传感器数据。
+off(type: SensorId.ACCELEROMETER_UNCALIBRATED, callback?: Callback<AccelerometerUncalibratedResponse>): void
+
+取消订阅未校准的加速度计传感器数据。
-**需要权限**:ohos.permission.READ_HEALTH_DATA
+**需要权限**:ohos.permission.ACCELEROMETER
**系统能力**:SystemCapability.Sensors.Sensor
**参数:**
-| 参数名 | 类型 | 必填 | 说明 |
-| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
-| type | [SensorType](#sensortype) | 是 | 心率传感器类型为SENSOR_TYPE_ID_HEART_BEAT_RATE。 |
-| callback | Callback<[HeartRateResponse](#heartrateresponse)> | 是 | 注册一次心率传感器的回调函数,上报的数据类型为HeartRateResponse。 |
+
+| 参数名 | 类型 | 必填 | 说明 |
+| -------- | ------------------------------------------------------------ | ---- | ------------------------------------------------------------ |
+| type | [SensorId](#sensorid9) | 是 | 要取消订阅的未校准加速度计传感器类型为ACCELEROMETER_UNCALIBRATED。 |
+| callback | Callback<[AccelerometerUncalibratedResponse](#accelerometeruncalibratedresponse)> | 是 | 取消注册未校准加速度计传感器的回调函数,上报的数据类型为AccelerometerUncalibratedResponse。 |
**示例:**
- ```js
- sensor.once(sensor.SensorType.SENSOR_TYPE_ID_HEART_BEAT_RATE, function(data) {
- console.info("Heart rate: " + data.heartRate);
+
+```js
+try {
+ function callback(data) {
+ console.info('X-coordinate component: ' + data.x);
+ console.info('Y-coordinate component: ' + data.y);
+ console.info('Z-coordinate component: ' + data.z);
+ console.info('X-coordinate bias: ' + data.biasX);
+ console.info('Y-coordinate bias: ' + data.biasY);
+ console.info('Z-coordinate bias: ' + data.biasZ);
}
- );
- ```
+ sensor.off(sensor.SensorId.ACCELEROMETER_UNCALIBRATED, callback);
+} catch(err) {
+ console.info('off fail, errCode: ' + err.code + ' ,msg: ' + err.message);
+}
+```
-### WEAR_DETECTION
+### AMBIENT_LIGHT9+
-once(type: SensorType.SENSOR_TYPE_ID_WEAR_DETECTION, callback: Callback<WearDetectionResponse>): void
+off(type: SensorId.AMBIENT_LIGHT, callback?: Callback<LightResponse>): void
-监听佩戴检测传感器数据变化一次。
+取消订阅环境光传感器数据。
**系统能力**:SystemCapability.Sensors.Sensor
-**参数:**
-| 参数名 | 类型 | 必填 | 说明 |
-| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
-| type | [SensorType](#sensortype) | 是 | 佩戴检测传感器类型为SENSOR_TYPE_ID_WEAR_DETECTION。 |
-| callback | Callback<[WearDetectionResponse](#weardetectionresponse)> | 是 | 注册一次穿戴检测传感器的回调函数,上报的数据类型为WearDetectionResponse。 |
+**参数:**
-**示例:**
- ```js
- sensor.once(sensor.SensorType.SENSOR_TYPE_ID_WEAR_DETECTION, function(data) {
- console.info("Wear status: "+ data.value);
- }
- );
- ```
+| 参数名 | 类型 | 必填 | 说明 |
+| -------- | ----------------------------------------------- | ---- | ------------------------------------------------------------ |
+| type | [SensorId](#sensorid9) | 是 | 要取消订阅的环境光传感器类型为AMBIENT_LIGHT。 |
+| callback | Callback<[LightResponse](#lightresponse)> | 是 | 取消注册环境光传感器的回调函数,上报的数据类型为LightResponse。 |
-## sensor.off
+**示例:**
-### ACCELEROMETER
+```js
+try {
+ function callback(data) {
+ console.info('Illumination: ' + data.intensity);
+ }
+ sensor.off(sensor.SensorId.AMBIENT_LIGHT, callback);
+} catch(err) {
+ console.info('off fail, errCode: ' + err.code + ' ,msg: ' + err.message);
+}
+```
-off(type: SensorType.SENSOR_TYPE_ID_ACCELEROMETER, callback?: Callback<AccelerometerResponse>): void
+### AMBIENT_TEMPERATURE9+
-取消订阅传感器数据。
+off(type: SensorId.AMBIENT_TEMPERATURE, callback?: Callback<AmbientTemperatureResponse>): void
-**需要权限**:ohos.permission.ACCELEROMETER
+取消订阅环境温度传感器数据。
**系统能力**:SystemCapability.Sensors.Sensor
-**参数:**
+**参数:**
-| 参数名 | 类型 | 必填 | 说明 |
-| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
-| type | [SensorType](#sensortype) | 是 | 要取消订阅的加速度传感器类型为SENSOR_TYPE_ID_ACCELEROMETER。 |
-| callback | Callback<[AccelerometerResponse](#accelerometerresponse)> | 是 | 取消注册加速度传感器的回调函数,上报的数据类型为AccelerometerResponse。 |
+| 参数名 | 类型 | 必填 | 说明 |
+| -------- | ------------------------------------------------------------ | ---- | ------------------------------------------------------------ |
+| type | [SensorId](#sensorid9) | 是 | 要取消订阅的环境温度传感器类型为AMBIENT_TEMPERATURE。 |
+| callback | Callback<[AmbientTemperatureResponse](#ambienttemperatureresponse)> | 是 | 取消注册环境温度传感器的回调函数,上报的数据类型为AmbientTemperatureResponse。 |
-**示例:**
+**示例:**
```js
-function callback(data) {
- console.info('x-coordinate component: ' + data.x);
- console.info('Y-coordinate component: ' + data.y);
- console.info('Z-coordinate component: ' + data.z);
+try {
+ function callback(data) {
+ console.info('Temperature: ' + data.temperature);
+ }
+ sensor.off( sensor.SensorId.AMBIENT_TEMPERATURE, callback);
+} catch(err) {
+ console.info('off fail, errCode: ' + err.code + ' ,msg: ' + err.message);
}
-sensor.off(sensor.SensorType.SENSOR_TYPE_ID_ACCELEROMETER, callback);
```
-### ACCELEROMETER_UNCALIBRATED
-
-off(type: SensorType.SENSOR_TYPE_ID_ACCELEROMETER_UNCALIBRATED, callback?: Callback<AccelerometerUncalibratedResponse>): void
+### BAROMETER9+
-取消订阅传感器数据。
+off(type: SensorId.BAROMETER, callback?: Callback<BarometerResponse>): void
-**需要权限**:ohos.permission.ACCELEROMETER
+取消订阅气压计传感器数据。
**系统能力**:SystemCapability.Sensors.Sensor
-**参数:**
+**参数:**
-| 参数名 | 类型 | 必填 | 说明 |
-| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
-| type | [SensorType](#sensortype) | 是 | 要取消订阅的未校准加速度计传感器类型为SENSOR_TYPE_ID_ACCELEROMETER_UNCALIBRATED。 |
-| callback | Callback<[AccelerometerUncalibratedResponse](#accelerometeruncalibratedresponse)> | 是 | 取消注册未校准加速度计传感器的回调函数,上报的数据类型为AccelerometerUncalibratedResponse。 |
+| 参数名 | 类型 | 必填 | 说明 |
+| -------- | ------------------------------------------------------- | ---- | ------------------------------------------------------------ |
+| type | [SensorId](#sensorid9) | 是 | 要取消订阅的气压计传感器类型为BAROMETER。 |
+| callback | Callback<[BarometerResponse](#barometerresponse)> | 是 | 取消注册气压计传感器的回调函数,上报的数据类型为BarometerResponse。 |
-**示例:**
+**示例:**
```js
-function callback(data) {
- console.info('X-coordinate component: ' + data.x);
- console.info('Y-coordinate component: ' + data.y);
- console.info('Z-coordinate component: ' + data.z);
- console.info('X-coordinate bias: ' + data.biasX);
- console.info('Y-coordinate bias: ' + data.biasY);
- console.info('Z-coordinate bias: ' + data.biasZ);
+try {
+ function callback(data) {
+ console.info('Atmospheric pressure: ' + data.pressure);
+ }
+ sensor.off(sensor.SensorId.BAROMETER, callback);
+} catch(err) {
+ console.info('off fail, errCode: ' + err.code + ' ,msg: ' + err.message);
}
-sensor.off(sensor.SensorType.SENSOR_TYPE_ID_ACCELEROMETER_UNCALIBRATED, callback);
```
-### AMBIENT_LIGHT
+### GRAVITY9+
-off(type: SensorType.SENSOR_TYPE_ID_AMBIENT_LIGHT, callback?: Callback<LightResponse>): void
+off(type: SensorId.GRAVITY, callback?: Callback<GravityResponse>): void
-取消订阅传感器数据。
+取消订阅重力传感器数据。
**系统能力**:SystemCapability.Sensors.Sensor
**参数:**
-| 参数名 | 类型 | 必填 | 说明 |
-| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
-| type | [SensorType](#sensortype) | 是 | 要取消订阅的环境光传感器类型为SENSOR_TYPE_ID_AMBIENT_LIGHT。 |
-| callback | Callback<[LightResponse](#lightresponse)> | 是 | 取消注册环境光传感器的回调函数,上报的数据类型为LightResponse。 |
+| 参数名 | 类型 | 必填 | 说明 |
+| -------- | --------------------------------------------------- | ---- | ------------------------------------------------------------ |
+| type | [SensorId](#sensorid9) | 是 | 要取消订阅的重力传感器类型为GRAVITY。 |
+| callback | Callback<[GravityResponse](#gravityresponse)> | 是 | 取消注册注册重力传感器的回调函数,上报的数据类型为GravityResponse。 |
-**示例:**
+**示例:**
```js
-function callback(data) {
- console.info(' Illumination: ' + data.intensity);
+try {
+ function callback(data) {
+ console.info('X-coordinate component: ' + data.x);
+ console.info('Y-coordinate component: ' + data.y);
+ console.info('Z-coordinate component: ' + data.z);
+ }
+ sensor.off( sensor.SensorId.GRAVITY, callback);
+} catch(err) {
+ console.info('off fail, errCode: ' + err.code + ' ,msg: ' + err.message);
}
-sensor.off(sensor.SensorType.SENSOR_TYPE_ID_AMBIENT_LIGHT, callback);
```
-### AMBIENT_TEMPERATURE
+### GYROSCOPE9+
-off(type: SensorType.SENSOR_TYPE_ID_AMBIENT_TEMPERATURE, callback?: Callback<AmbientTemperatureResponse>): void
+off(type: SensorId.GYROSCOPE, callback?: Callback<GyroscopeResponse>): void
-取消订阅传感器数据。
+取消订阅陀螺仪传感器数据。
+
+**需要权限**:ohos.permission.GYROSCOPE
**系统能力**:SystemCapability.Sensors.Sensor
-**参数:**
+**参数:**
-| 参数名 | 类型 | 必填 | 说明 |
-| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
-| type | [SensorType](#sensortype) | 是 | 要取消订阅的环境温度传感器类型为SENSOR_TYPE_ID_AMBIENT_TEMPERATURE。 |
-| callback | Callback<[AmbientTemperatureResponse](#ambienttemperatureresponse)> | 是 | 取消注册环境温度传感器的回调函数,上报的数据类型为AmbientTemperatureResponse。 |
+| 参数名 | 类型 | 必填 | 说明 |
+| -------- | ------------------------------------------------------- | ---- | ------------------------------------------------------------ |
+| type | [SensorId](#sensorid9) | 是 | 要取消订阅的陀螺仪传感器类型为GYROSCOPE。 |
+| callback | Callback<[GyroscopeResponse](#gyroscoperesponse)> | 是 | 取消注册陀螺仪传感器的回调函数,上报的数据类型为GyroscopeResponse。 |
-**示例:**
+**示例:**
```js
-function callback(data) {
- console.info('Temperature: ' + data.temperature);
+try {
+ function callback(data) {
+ console.info('X-coordinate component: ' + data.x);
+ console.info('Y-coordinate component: ' + data.y);
+ console.info('Z-coordinate component: ' + data.z);
+ }
+ sensor.off(sensor.SensorId.GYROSCOPE, callback);
+} catch(err) {
+ console.info('off fail, errCode: ' + err.code + ' ,msg: ' + err.message);
}
-sensor.off( sensor.SensorType.SENSOR_TYPE_ID_AMBIENT_TEMPERATURE, callback);
```
-### AMBIENT_TEMPERATURE
+### GYROSCOPE_UNCALIBRATED9+
-off(type: SensorType.SENSOR_TYPE_ID_BAROMETER, callback?: Callback<BarometerResponse>): void
+off(type: SensorId.GYROSCOPE_UNCALIBRATED, callback?: Callback<GyroscopeUncalibratedResponse>): void
-取消订阅传感器数据。
+ 取消订阅未校准的陀螺仪传感器数据。
+
+**需要权限**:ohos.permission.GYROSCOPE
**系统能力**:SystemCapability.Sensors.Sensor
-**参数:**
+**参数:**
-| 参数名 | 类型 | 必填 | 说明 |
-| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
-| type | [SensorType](#sensortype) | 是 | 要取消订阅的气压计传感器类型为SENSOR_TYPE_ID_BAROMETER。 |
-| callback | Callback<[BarometerResponse](#barometerresponse)> | 是 | 取消注册气压计传感器的回调函数,上报的数据类型为BarometerResponse。 |
+| 参数名 | 类型 | 必填 | 说明 |
+| -------- | ------------------------------------------------------------ | ---- | ------------------------------------------------------------ |
+| type | [SensorId](#sensorid9) | 是 | 要取消订阅的未校准陀螺仪传感器类型为GYROSCOPE_UNCALIBRATED。 |
+| callback | Callback<[GyroscopeUncalibratedResponse](#gyroscopeuncalibratedresponse)> | 是 | 取消注册未校准陀螺仪传感器的回调函数,上报的数据类型为GyroscopeUncalibratedResponse。 |
-**示例:**
+**示例:**
```js
-function callback(data) {
- console.info('Atmospheric pressure: ' + data.pressure);
+try {
+ function callback(data) {
+ console.info('X-coordinate component: ' + data.x);
+ console.info('Y-coordinate component: ' + data.y);
+ console.info('Z-coordinate component: ' + data.z);
+ }
+ sensor.off(sensor.SensorId.GYROSCOPE_UNCALIBRATED, callback);
+} catch(err) {
+ console.info('off fail, errCode: ' + err.code + ' ,msg: ' + err.message);
}
-sensor.off(sensor.SensorType.SENSOR_TYPE_ID_BAROMETER, callback);
```
-### GRAVITY
+### HALL9+
-off(type: SensorType.SENSOR_TYPE_ID_GRAVITY, callback?: Callback<GravityResponse>): void
+off(type: SensorId.HALL, callback?: Callback<HallResponse>): void
-取消订阅传感器数据。
+取消订阅霍尔传感器数据。
**系统能力**:SystemCapability.Sensors.Sensor
-**参数:**
+**参数:**
-| 参数名 | 类型 | 必填 | 说明 |
-| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
-| type | [SensorType](#sensortype) | 是 | 要取消订阅的重力传感器类型为SENSOR_TYPE_ID_GRAVITY。 |
-| callback | Callback<[GravityResponse](#gravityresponse)> | 是 | 取消注册注册重力传感器的回调函数,上报的数据类型为GravityResponse。 |
+| 参数名 | 类型 | 必填 | 说明 |
+| -------- | --------------------------------------------- | ---- | ------------------------------------------------------------ |
+| type | [SensorId](#sensorid9) | 是 | 要取消订阅的霍尔传感器类型为HALL。 |
+| callback | Callback<[HallResponse](#hallresponse)> | 是 | 取消注册霍尔传感器的回调函数,上报的数据类型为 HallResponse。 |
-**示例:**
+**示例:**
```js
-function callback(data) {
- console.info('X-coordinate component: ' + data.x);
- console.info('Y-coordinate component: ' + data.y);
- console.info('Z-coordinate component: ' + data.z);
+try {
+ function callback(data) {
+ console.info('Status: ' + data.status);
+ }
+ sensor.off(sensor.SensorId.HALL, callback);
+} catch(err) {
+ console.info('off fail, errCode: ' + err.code + ' ,msg: ' + err.message);
}
-sensor.off( sensor.SensorType.SENSOR_TYPE_ID_GRAVITY, callback);
```
-### GYROSCOPE
+### HEART_RATE9+
-off(type: SensorType.SENSOR_TYPE_ID_GYROSCOPE, callback?: Callback<GyroscopeResponse>): void
+off(type: SensorId.HEART_RATE, callback?: Callback<HeartRateResponse>): void
-取消订阅传感器数据。
+取消订阅心率传感器数据。
-**需要权限**:ohos.permission.GYROSCOPE
+**需要权限**:ohos.permission.READ_HEALTH_DATA
**系统能力**:SystemCapability.Sensors.Sensor
-**参数:**
+**参数:**
-| 参数名 | 类型 | 必填 | 说明 |
-| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
-| type | [SensorType](#sensortype) | 是 | 要取消订阅的陀螺仪传感器类型为SENSOR_TYPE_ID_GYROSCOPE。 |
-| callback | Callback<[GyroscopeResponse](#gyroscoperesponse)> | 是 | 取消注册陀螺仪传感器的回调函数,上报的数据类型为GyroscopeResponse。 |
+| 参数名 | 类型 | 必填 | 说明 |
+| -------- | ------------------------------------------------------- | ---- | ------------------------------------------------------------ |
+| type | [SensorId](#sensorid9) | 是 | 要取消订阅的心率传感器类型为HEART_RATE。 |
+| callback | Callback<[HeartRateResponse](#heartrateresponse)> | 是 | 取消注册一次心率传感器的回调函数,上报的数据类型为HeartRateResponse。 |
-**示例:**
+**示例:**
```js
-function callback(data) {
- console.info('X-coordinate component: ' + data.x);
- console.info('Y-coordinate component: ' + data.y);
- console.info('Z-coordinate component: ' + data.z);
+try {
+ function callback(data) {
+ console.info("Heart rate: " + data.heartRate);
+ }
+ sensor.off(sensor.SensorId.HEART_RATE, callback);
+} catch(err) {
+ console.info('off fail, errCode: ' + err.code + ' ,msg: ' + err.message);
}
-sensor.off(sensor.SensorType.SENSOR_TYPE_ID_GYROSCOPE, callback);
```
-### GYROSCOPE_UNCALIBRATED
+### HUMIDITY9+
-off(type: SensorType.SENSOR_TYPE_ID_GYROSCOPE_UNCALIBRATED, callback?: Callback<GyroscopeUncalibratedResponse>): void
-
-取消订阅传感器数据。
+off(type: SensorId.HUMIDITY, callback?: Callback<HumidityResponse>): void
-**需要权限**:ohos.permission.GYROSCOPE
+取消订阅湿度传感器数据。
**系统能力**:SystemCapability.Sensors.Sensor
-**参数:**
+**参数:**
-| 参数名 | 类型 | 必填 | 说明 |
-| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
-| type | [SensorType](#sensortype) | 是 | 要取消订阅的未校准陀螺仪传感器类型为SENSOR_TYPE_ID_GYROSCOPE_UNCALIBRATED。 |
-| callback | Callback<[GyroscopeUncalibratedResponse](#gyroscopeuncalibratedresponse)> | 是 | 取消注册未校准陀螺仪传感器的回调函数,上报的数据类型为GyroscopeUncalibratedResponse。 |
+| 参数名 | 类型 | 必填 | 说明 |
+| -------- | ----------------------------------------------------- | ---- | ------------------------------------------------------------ |
+| type | [SensorId](#sensorid9) | 是 | 要取消订阅的湿度传感器类型为HUMIDITY。 |
+| callback | Callback<[HumidityResponse](#humidityresponse)> | 是 | 取消注册湿度传感器的回调函数,上报的数据类型为HumidityResponse。 |
-**示例:**
+**示例:**
```js
-function callback(data) {
- console.info('X-coordinate component: ' + data.x);
- console.info('Y-coordinate component: ' + data.y);
- console.info('Z-coordinate component: ' + data.z);
+try {
+ function callback(data) {
+ console.info('Humidity: ' + data.humidity);
+ }
+ sensor.off(sensor.SensorId.HUMIDITY, callback);
+} catch(err) {
+ console.info('off fail, errCode: ' + err.code + ' ,msg: ' + err.message);
}
-sensor.off(sensor.SensorType.SENSOR_TYPE_ID_GYROSCOPE_UNCALIBRATED, callback);
```
-### HALL
+### LINEAR_ACCELEROMETER9+
-off(type: SensorType.SENSOR_TYPE_ID_HALL, callback?: Callback<HallResponse>): void
+off(type: SensorId.LINEAR_ACCELEROMETER, callback?: Callback<LinearAccelerometerResponse>): void
-取消订阅传感器数据。
+取消订阅线性加速度传感器数据。
-**系统能力**:SystemCapability.Sensors.Sensor
+**需要权限**:ohos.permission.ACCELEROMETER
-**参数:**
+**系统能力**:SystemCapability.Sensors.Sensor
-| 参数名 | 类型 | 必填 | 说明 |
-| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
-| type | [SensorType](#sensortype) | 是 | 要取消订阅的霍尔传感器类型为SENSOR_TYPE_ID_HALL。 |
-| callback | Callback<[HallResponse](#hallresponse)> | 是 | 取消注册霍尔传感器的回调函数,上报的数据类型为 HallResponse。 |
+**参数:**
-**示例:**
+| 参数名 | 类型 | 必填 | 说明 |
+| -------- | ------------------------------------------------------------ | ---- | ------------------------------------------------------------ |
+| type | [SensorId](#sensorid9) | 是 | 要取消订阅的线性加速度传感器类型为LINEAR_ACCELERATION。 |
+| callback | Callback<[LinearAccelerometerResponse](#linearaccelerometerresponse)> | 是 | 取消注册性加速度传感器的回调函数,上报的数据类型为LinearAccelerometerResponse。 |
+
+**示例:**
```js
-function callback(data) {
- console.info('Status: ' + data.status);
+try {
+ function callback(data) {
+ console.info('X-coordinate component: ' + data.x);
+ console.info('Y-coordinate component: ' + data.y);
+ console.info('Z-coordinate component: ' + data.z);
+ }
+ sensor.off(sensor.SensorId.LINEAR_ACCELEROMETER, callback);
+} catch(err) {
+ console.info('off fail, errCode: ' + err.code + ' ,msg: ' + err.message);
}
-sensor.off(sensor.SensorType.SENSOR_TYPE_ID_HALL, callback);
```
-### HEART_RATE(deprecated)
-
-off(type: SensorType.SENSOR_TYPE_ID_HEART_RATE, callback?: Callback<HeartRateResponse>): void
+### MAGNETIC_FIELD9+
-取消订阅传感器数据。
+off(type: SensorId.MAGNETIC_FIELD, callback?: Callback<MagneticFieldResponse>): void
-从API Version9开始该接口不再维护,请使用[sensor.off.HEART_BEAT_RATE](#heart_beat_rate9)
+取消订阅磁场传感器数据。
-**需要权限**:ohos.permission.HEALTH_DATA
+**系统能力**:SystemCapability.Sensors.Sensor
-**系统能力**:SystemCapability.Sensors.Sensor
+**参数:**
-**参数:**
+| 参数名 | 类型 | 必填 | 说明 |
+| -------- | ------------------------------------------------------------ | ---- | ------------------------------------------------------------ |
+| type | [SensorId](#sensorid9) | 是 | 要取消订阅的磁场传感器类型为MAGNETIC_FIELD。 |
+| callback | Callback<[MagneticFieldResponse](#magneticfieldresponse)> | 是 | 取消注册磁场传感器的回调函数,上报的数据类型为MagneticFieldResponse。 |
-| 参数名 | 类型 | 必填 | 说明 |
-| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
-| type | [SensorType](#sensortype)[SensorType](#sensortype) | 是 | 要取消订阅的心率传感器类型为SENSOR_TYPE_ID_HEART_RATE。 |
-| callback | Callback<[HeartRateResponse](#heartrateresponse)> | 是 | 取消注册一次心率传感器的回调函数,上报的数据类型为HeartRateResponse。 |
+**示例:**
-### HEART_BEAT_RATE9+
+```js
+try {
+ function callback(data) {
+ console.info('X-coordinate component: ' + data.x);
+ console.info('Y-coordinate component: ' + data.y);
+ console.info('Z-coordinate component: ' + data.z);
+ }
+ sensor.off(sensor.SensorId.MAGNETIC_FIELD, callback);
+} catch(err) {
+ console.info('off fail, errCode: ' + err.code + ' ,msg: ' + err.message);
+}
+```
-off(type: SensorType.SENSOR_TYPE_ID_HEART_BEAT_RATE, callback?: Callback<HeartRateResponse>): void
+### MAGNETIC_FIELD_UNCALIBRATED9+
-取消订阅传感器数据。
+off(type: SensorId.MAGNETIC_FIELD_UNCALIBRATED, callback?: Callback<MagneticFieldUncalibratedResponse>): void
-**需要权限**:ohos.permission.READ_HEALTH_DATA
+取消订阅未校准的磁场传感器数据。
-**系统能力**:SystemCapability.Sensors.Sensor
+**系统能力**:SystemCapability.Sensors.Sensor
**参数:**
-| 参数名 | 类型 | 必填 | 说明 |
-| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
-| type | [SensorType](#sensortype)[SensorType](#sensortype) | 是 | 要取消订阅的心率传感器类型为SENSOR_TYPE_ID_HEART_BEAT_RATE。 |
-| callback | Callback<[HeartRateResponse](#heartrateresponse)> | 是 | 取消注册一次心率传感器的回调函数,上报的数据类型为HeartRateResponse。 |
+| 参数名 | 类型 | 必填 | 说明 |
+| -------- | ------------------------------------------------------------ | ---- | ------------------------------------------------------------ |
+| type | [SensorId](#sensorid9) | 是 | 要取消订阅的未校准磁场传感器类型为MAGNETIC_FIELD_UNCALIBRATED。 |
+| callback | Callback<[MagneticFieldUncalibratedResponse](#magneticfielduncalibratedresponse)> | 是 | 取消注册未校准磁场传感器的回调函数,上报的数据类型为MagneticFieldUncalibratedResponse。 |
**示例:**
```js
-function callback(data) {
- console.info("Heart rate: " + data.heartRate);
+try {
+ function callback(data) {
+ console.info('X-coordinate component: ' + data.x);
+ console.info('Y-coordinate component: ' + data.y);
+ console.info('Z-coordinate component: ' + data.z);
+ console.info('X-coordinate bias: ' + data.biasX);
+ console.info('Y-coordinate bias: ' + data.biasY);
+ console.info('Z-coordinate bias: ' + data.biasZ);
+ }
+ sensor.off(sensor.SensorId.MAGNETIC_FIELD_UNCALIBRATED, callback);
+} catch(err) {
+ console.info('off fail, errCode: ' + err.code + ' ,msg: ' + err.message);
}
-sensor.off(sensor.SensorType.SENSOR_TYPE_ID_HEART_BEAT_RATE, callback);
```
-### HUMIDITY
+### ORIENTATION9+
-off(type: SensorType.SENSOR_TYPE_ID_HUMIDITY, callback?: Callback<HumidityResponse>): void
+off(type: SensorId.ORIENTATION, callback?: Callback<OrientationResponse>): void
-取消订阅传感器数据。
+取消订阅方向传感器数据。
**系统能力**:SystemCapability.Sensors.Sensor
-**参数:**
+**参数:**
-| 参数名 | 类型 | 必填 | 说明 |
-| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
-| type | [SensorType](#sensortype) | 是 | 要取消订阅的湿度传感器类型为SENSOR_TYPE_ID_HUMIDITY。 |
-| callback | Callback<[HumidityResponse](#humidityresponse)> | 是 | 取消注册湿度传感器的回调函数,上报的数据类型为HumidityResponse。 |
+| 参数名 | 类型 | 必填 | 说明 |
+| -------- | ----------------------------------------------------------- | ---- | ------------------------------------------------------------ |
+| type | [SensorId](#sensorid9) | 是 | 要取消订阅的方向传感器类型为ORIENTATION。 |
+| callback | Callback<[OrientationResponse](#orientationresponse)> | 是 | 取消注册方向传感器的回调函数,上报的数据类型为OrientationResponse。 |
-**示例:**
+**示例:**
```js
-function callback(data) {
- console.info('Humidity: ' + data.humidity);
+try {
+ function callback(data) {
+ console.info('The device rotates at an angle around the X axis: ' + data.beta);
+ console.info('The device rotates at an angle around the Y axis: ' + data.gamma);
+ console.info('The device rotates at an angle around the Z axis: ' + data.alpha);
+ }
+ sensor.off(sensor.SensorId.ORIENTATION, callback);
+} catch(err) {
+ console.info('off fail, errCode: ' + err.code + ' ,msg: ' + err.message);
}
-sensor.off(sensor.SensorType.SENSOR_TYPE_ID_HUMIDITY, callback);
```
-### LINEAR_ACCELERATION(deprecated)
-
-off(type: SensorType.SENSOR_TYPE_ID_LINEAR_ACCELERATION, callback?: Callback<LinearAccelerometerResponse>): void
+### PEDOMETER9+
-取消订阅传感器数据。
+off(type: SensorId.PEDOMETER, callback?: Callback<PedometerResponse>): void
-从API Version9开始该接口不再维护,请使用[sensor.off.LINEAR_ACCELEROMETER](#linear_accelerometer9)
+取消订阅计步器传感器数据。
-**需要权限**:ohos.permission.ACCELEROMETER
+**需要权限**:ohos.permission.ACTIVITY_MOTION
**系统能力**:SystemCapability.Sensors.Sensor
-**参数:**
+**参数:**
-| 参数名 | 类型 | 必填 | 说明 |
-| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
-| type | [SensorType](#sensortype) | 是 | 要取消订阅的线性加速度传感器类型为SENSOR_TYPE_ID_LINEAR_ACCELERATION。 |
-| callback | Callback<[LinearAccelerometerResponse](#linearaccelerometerresponse)> | 是 | 取消注册性加速度传感器的回调函数,上报的数据类型为LinearAccelerometerResponse。 |
+| 参数名 | 类型 | 必填 | 说明 |
+| -------- | ------------------------------------------------------- | ---- | ------------------------------------------------------------ |
+| type | [SensorId](#sensorid9) | 是 | 要取消订阅的计步传感器类型为PEDOMETER。 |
+| callback | Callback<[PedometerResponse](#pedometerresponse)> | 是 | 取消注册计步传感器的回调函数,上报的数据类型为PedometerResponse。 |
-### LINEAR_ACCELEROMETER9+
+**示例:**
-off(type: SensorType.SENSOR_TYPE_ID_LINEAR_ACCELEROMETER, callback?: Callback<LinearAccelerometerResponse>): void
+```js
+try {
+ function callback(data) {
+ console.info('Steps: ' + data.steps);
+ }
+ sensor.off(sensor.SensorId.PEDOMETER, callback);
+} catch(err) {
+ console.info('off fail, errCode: ' + err.code + ' ,msg: ' + err.message);
+}
+```
-取消订阅传感器数据。
+### PEDOMETER_DETECTION9+
-**需要权限**:ohos.permission.ACCELEROMETER
+off(type: SensorId.PEDOMETER_DETECTION, callback?: Callback<PedometerDetectionResponse>): void
+
+取消订阅计步器检测传感器数据。
+
+**需要权限**:ohos.permission.ACTIVITY_MOTION
**系统能力**:SystemCapability.Sensors.Sensor
**参数:**
-| 参数名 | 类型 | 必填 | 说明 |
-| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
-| type | [SensorType](#sensortype) | 是 | 要取消订阅的线性加速度传感器类型为SENSOR_TYPE_ID_LINEAR_ACCELEROMETER。 |
-| callback | Callback<[LinearAccelerometerResponse](#linearaccelerometerresponse)> | 是 | 取消注册性加速度传感器的回调函数,上报的数据类型为LinearAccelerometerResponse。 |
+| 参数名 | 类型 | 必填 | 说明 |
+| -------- | ------------------------------------------------------------ | ---- | ------------------------------------------------------------ |
+| type | [SensorId](#sensorid9) | 是 | 要取消订阅的计步检测传感器类型为PEDOMETER_DETECTION。 |
+| callback | Callback<[PedometerDetectionResponse](#pedometerdetectionresponse)> | 是 | 取消注册计步检测传感器的回调函数,上报的数据类型为PedometerDetectionResponse。 |
**示例:**
```js
-function callback(data) {
- console.info('X-coordinate component: ' + data.x);
- console.info('Y-coordinate component: ' + data.y);
- console.info('Z-coordinate component: ' + data.z);
+try {
+ function callback(data) {
+ console.info('Scalar data: ' + data.scalar);
+ }
+ sensor.off(sensor.SensorId.PEDOMETER_DETECTION, callback);
+} catch(err) {
+ console.info('off fail, errCode: ' + err.code + ' ,msg: ' + err.message);
}
-sensor.off(sensor.SensorType.SENSOR_TYPE_ID_LINEAR_ACCELEROMETER, callback);
```
-### MAGNETIC_FIELD
+### PROXIMITY9+
- off(type: SensorType.SENSOR_TYPE_ID_MAGNETIC_FIELD, callback?: Callback<MagneticFieldResponse>): void
+off(type: SensorId.PROXIMITY, callback?: Callback<ProximityResponse>): void
-取消订阅传感器数据。
+取消订阅接近传感器数据。
**系统能力**:SystemCapability.Sensors.Sensor
-**参数:**
+**参数:**
-| 参数名 | 类型 | 必填 | 说明 |
-| ---------------- | ---------------------------------------- | ---- | ---------------------------------------- |
-| type | [SensorType](#sensortype) | 是 | 要取消订阅的磁场传感器类型为SENSOR_TYPE_ID_MAGNETIC_FIELD。 |
-| callbackcallback | Callback<[MagneticFieldResponse](#magneticfieldresponse)> | 是 | 取消注册磁场传感器的回调函数,上报的数据类型为MagneticFieldResponse。 |
+| 参数名 | 类型 | 必填 | 说明 |
+| -------- | ------------------------------------------------------- | ---- | ------------------------------------------------------------ |
+| type | [SensorId](#sensorid9) | 是 | 要取消订阅的接近光传感器类型为PROXIMITY。 |
+| callback | Callback<[ProximityResponse](#proximityresponse)> | 是 | 取消注册接近光传感器的回调函数,上报的数据类型为ProximityResponse。 |
-**示例:**
+**示例:**
```js
-function callback(data) {
- console.info('X-coordinate component: ' + data.x);
- console.info('Y-coordinate component: ' + data.y);
- console.info('Z-coordinate component: ' + data.z);
+try {
+ function callback(data) {
+ console.info('Distance: ' + data.distance);
+ }
+ sensor.off(sensor.SensorId.PROXIMITY, callback);
+} catch(err) {
+ console.info('off fail, errCode: ' + err.code + ' ,msg: ' + err.message);
}
-sensor.off(sensor.SensorType.SENSOR_TYPE_ID_MAGNETIC_FIELD, callback);
```
-### MAGNETIC_FIELD_UNCALIBRATED
+### ROTATION_VECTOR9+
- off(type: SensorType.SENSOR_TYPE_ID_MAGNETIC_FIELD_UNCALIBRATED, callback?: Callback<MagneticFieldUncalibratedResponse>): void
+off(type: SensorId.ROTATION_VECTOR, callback?: Callback<RotationVectorResponse>): void
-取消订阅传感器数据。
+取消订阅旋转矢量传感器数据。
**系统能力**:SystemCapability.Sensors.Sensor
-**参数:**
+**参数:**
-| 参数名 | 类型 | 必填 | 说明 |
-| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
-| type | [SensorType](#sensortype) | 是 | 要取消订阅的未校准磁场传感器类型为SENSOR_TYPE_ID_MAGNETIC_FIELD_UNCALIBRATED。 |
-| callback | Callback<[MagneticFieldUncalibratedResponse](#magneticfielduncalibratedresponse)> | 是 | 取消注册未校准磁场传感器的回调函数,上报的数据类型为MagneticFieldUncalibratedResponse。 |
+| 参数名 | 类型 | 必填 | 说明 |
+| -------- | ------------------------------------------------------------ | ---- | ------------------------------------------------------------ |
+| type | [SensorId](#sensorid9) | 是 | 要取消订阅的旋转矢量传感器类型为ROTATION_VECTOR。 |
+| callback | Callback<[RotationVectorResponse](#rotationvectorresponse)> | 是 | 取消注册旋转矢量传感器的回调函数,上报的数据类型为RotationVectorResponse。 |
-**示例:**
+**示例:**
```js
-function callback(data) {
- console.info('X-coordinate component: ' + data.x);
- console.info('Y-coordinate component: ' + data.y);
- console.info('Z-coordinate component: ' + data.z);
- console.info('X-coordinate bias: ' + data.biasX);
- console.info('Y-coordinate bias: ' + data.biasY);
- console.info('Z-coordinate bias: ' + data.biasZ);
+try {
+ function callback(data) {
+ console.info('X-coordinate component: ' + data.x);
+ console.info('Y-coordinate component: ' + data.y);
+ console.info('Z-coordinate component: ' + data.z);
+ console.info('Scalar quantity: ' + data.w);
+ }
+ sensor.off(sensor.SensorId.ROTATION_VECTOR, callback);
+} catch(err) {
+ console.info('off fail, errCode: ' + err.code + ' ,msg: ' + err.message);
}
-sensor.off(sensor.SensorType.SENSOR_TYPE_ID_MAGNETIC_FIELD_UNCALIBRATED, callback);
```
-### ORIENTATION
+### SIGNIFICANT_MOTION9+
- off(type: SensorType.SENSOR_TYPE_ID_ORIENTATION, callback?: Callback<OrientationResponse>): void
+off(type: SensorId.SIGNIFICANT_MOTION, callback?: Callback<SignificantMotionResponse>): void
-取消订阅传感器数据。
+取消订阅重要的运动传感器数据。
**系统能力**:SystemCapability.Sensors.Sensor
-**参数:**
+**参数:**
-| 参数名 | 类型 | 必填 | 说明 |
-| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
-| type | [SensorType](#sensortype) | 是 | 要取消订阅的方向传感器类型为SENSOR_TYPE_ID_ORIENTATION |
-| callback | Callback<[OrientationResponse](#orientationresponse)> | 是 | 取消注册方向传感器的回调函数,上报的数据类型为OrientationResponse。 |
+| 参数名 | 类型 | 必填 | 说明 |
+| -------- | ------------------------------------------------------------ | ---- | ------------------------------------------------------------ |
+| type | [SensorId](#sensorid9) | 是 | 要取消订阅的大幅动作传感器类型为SIGNIFICANT_MOTION。 |
+| callback | Callback<[SignificantMotionResponse](#significantmotionresponse)> | 是 | 取消注册有效运动传感器的回调函数,上报的数据类型为SignificantMotionResponse。 |
-**示例:**
+**示例:**
```js
-function callback(data) {
- console.info('The device rotates at an angle around the X axis: ' + data.beta);
- console.info('The device rotates at an angle around the Y axis: ' + data.gamma);
- console.info('The device rotates at an angle around the Z axis: ' + data.alpha);
+try {
+ function callback(data) {
+ console.info('Scalar data: ' + data.scalar);
+ }
+ sensor.off(sensor.SensorId.SIGNIFICANT_MOTION, callback);
+} catch(err) {
+ console.info('off fail, errCode: ' + err.code + ' ,msg: ' + err.message);
}
-sensor.off(sensor.SensorType.SENSOR_TYPE_ID_ORIENTATION, callback);
```
-### PEDOMETER
+### WEAR_DETECTION9+
-off(type: SensorType.SENSOR_TYPE_ID_PEDOMETER, callback?: Callback<PedometerResponse>): void
+off(type: SensorId.WEAR_DETECTION, callback?: Callback<WearDetectionResponse>): void
-取消订阅传感器数据。
+取消订阅磨损检测传感器数据。
-**需要权限**:ohos.permission.ACTIVITY_MOTION
+**系统能力**:SystemCapability.Sensors.Sensor
+
+**参数:**
+
+| 参数名 | 类型 | 必填 | 说明 |
+| -------- | ------------------------------------------------------------ | ---- | ------------------------------------------------------------ |
+| type | [SensorId](#sensorid9) | 是 | 要取消订阅的佩戴检测传感器类型为WEAR_DETECTION。 |
+| callback | Callback<[WearDetectionResponse](#weardetectionresponse)> | 是 | 取消注册佩戴检测传感器的回调函数,上报的数据类型为WearDetectionResponse。 |
+
+**示例:**
+
+```js
+try {
+ function accCallback(data) {
+ console.info('Wear status: ' + data.value);
+ }
+ sensor.off(sensor.SensorId.WEAR_DETECTION, accCallback);
+} catch(err) {
+ console.info('off fail, errCode: ' + err.code + ' ,msg: ' + err.message);
+}
+```
+
+## sensor.getGeomagneticInfo9+
+
+getGeomagneticInfo(locationOptions: LocationOptions, timeMillis: number, callback: AsyncCallback<GeomagneticResponse>): void
+
+获取地球上特定位置的地磁场 。
**系统能力**:SystemCapability.Sensors.Sensor
**参数:**
-| 参数名 | 类型 | 必填 | 说明 |
-| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
-| type | [SensorType](#sensortype) | 是 | 要取消订阅的计步传感器类型为SENSOR_TYPE_ID_PEDOMETER。 |
-| callback | Callback<[PedometerResponse](#pedometerresponse)> | 是 | 取消注册计步传感器的回调函数,上报的数据类型为PedometerResponse。 |
+| 参数名 | 类型 | 必填 | 说明 |
+| --------------- | ------------------------------------------------------------ | ---- | ---------------------------------- |
+| locationOptions | [LocationOptions](#locationoptions) | 是 | 地理位置。 |
+| timeMillis | number | 是 | 表示获取磁偏角的时间,单位为毫秒。 |
+| callback | AsyncCallback<[GeomagneticResponse](#geomagneticresponse)> | 是 | 返回磁场信息。 |
**示例:**
```js
-function callback(data) {
- console.info('Steps: ' + data.steps);
+try {
+ sensor.getGeomagneticInfo({latitude:80, longitude:0, altitude:0}, 1580486400000, function(data) {
+ console.info('sensor_getGeomagneticInfo_callback x: ' + data.x + ',y: ' + data.y + ',z: ' +
+ data.z + ',geomagneticDip: ' + data.geomagneticDip + ',deflectionAngle: ' + data.deflectionAngle +
+ ',levelIntensity: ' + data.levelIntensity + ',totalIntensity: ' + data.totalIntensity);
+ });
+} catch (err) {
+ console.error('getGeomagneticInfo failed. Error code: ' + err.code + '; message: ' + err.message);
}
-sensor.off(sensor.SensorType.SENSOR_TYPE_ID_PEDOMETER, callback);
```
-### PEDOMETER_DETECTION
-
-off(type: SensorType.SENSOR_TYPE_ID_PEDOMETER_DETECTION, callback?: Callback<PedometerDetectionResponse>): void
+## sensor.getGeomagneticInfo9+
-取消订阅传感器数据。
+getGeomagneticInfo(locationOptions: LocationOptions, timeMillis: number): Promise<GeomagneticResponse>
-**需要权限**:ohos.permission.ACTIVITY_MOTION
+获取地球上特定位置的地磁场 。
**系统能力**:SystemCapability.Sensors.Sensor
**参数:**
-| 参数名 | 类型 | 必填 | 说明 |
-| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
-| type | [SensorType](#sensortype) | 是 | 要取消订阅的计步检测传感器类型为SENSOR_TYPE_ID_PEDOMETER_DETECTION。 |
-| callback | Callback<[PedometerDetectionResponse](#pedometerdetectionresponse)> | 是 | 取消注册计步检测传感器的回调函数,上报的数据类型为PedometerDetectionResponse。 |
+| 参数名 | 类型 | 必填 | 说明 |
+| --------------- | ----------------------------------- | ---- | ---------------------------------- |
+| locationOptions | [LocationOptions](#locationoptions) | 是 | 地理位置。 |
+| timeMillis | number | 是 | 表示获取磁偏角的时间,单位为毫秒。 |
+
+**返回值:**
+
+| 类型 | 说明 |
+| ---------------------------------------------------------- | -------------- |
+| Promise<[GeomagneticResponse](#geomagneticresponse)> | 返回磁场信息。 |
**示例:**
```js
-function callback(data) {
- console.info('Scalar data: ' + data.scalar);
+try {
+ const promise = sensor.getGeomagneticInfo({latitude:80, longitude:0, altitude:0}, 1580486400000);
+ promise.then((data) => {
+ console.info('sensor_getGeomagneticInfo_promise x: ' + data.x + ',y: ' + data.y + ',z: ' +
+ data.z + ',geomagneticDip: ' + data.geomagneticDip + ',deflectionAngle: ' + data.deflectionAngle +
+ ',levelIntensity: ' + data.levelIntensity + ',totalIntensity: ' + data.totalIntensity);
+ }).catch((reason) => {
+ console.info('Operation failed.');
+ })
+} catch (err) {
+ console.error('getGeomagneticInfo failed. Error code: ' + err.code + '; message: ' + err.message);
}
-sensor.off(sensor.SensorType.SENSOR_TYPE_ID_PEDOMETER_DETECTION, callback);
```
-### PROXIMITY
+## sensor.getDeviceAltitude9+
-off(type: SensorType.SENSOR_TYPE_ID_PROXIMITY, callback?: Callback<ProximityResponse>): void
+getDeviceAltitude(seaPressure: number, currentPressure: number, callback: AsyncCallback<number>): void
-取消订阅传感器数据。
+根据当前气压获取设备所在的海拔高度。
**系统能力**:SystemCapability.Sensors.Sensor
**参数:**
-| 参数名 | 类型 | 必填 | 说明 |
-| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
-| type | [SensorType](#sensortype) | 是 | 要取消订阅的接近光传感器类型为SENSOR_TYPE_ID_PROXIMITY。 |
-| callback | Callback<[ProximityResponse](#proximityresponse)> | 是 | 取消注册接近光传感器的回调函数,上报的数据类型为ProximityResponse。 |
+| 参数名 | 类型 | 必填 | 说明 |
+| --------------- | --------------------------- | ---- | ------------------------------------- |
+| seaPressure | number | 是 | 表示海平面气压值,单位为hPa。 |
+| currentPressure | number | 是 | 表示设备所在高度的气压值,单位为hPa。 |
+| callback | AsyncCallback<number> | 是 | 返回设备所在的海拔高度,单位为米。 |
-**示例:**
+**示例:**
```js
-function callback(data) {
- console.info('Distance: ' + data.distance);
+try {
+ sensor.getDeviceAltitude(0, 200, function(data) {
+ console.info('Successed to get getDeviceAltitude interface get data: ' + data);
+ });
+} catch (err) {
+ console.error('getDeviceAltitude failed. Error code: ' + err.code + '; message: ' + err.message);
}
-sensor.off(sensor.SensorType.SENSOR_TYPE_ID_PROXIMITY, callback);
```
-### ROTATION_VECTOR
+## sensor.getDeviceAltitude9+
-off(type: SensorType.SENSOR_TYPE_ID_ROTATION_VECTOR, callback?: Callback<RotationVectorResponse>): void
+getDeviceAltitude(seaPressure: number, currentPressure: number): Promise<number>
-取消订阅传感器数据。
+根据当前气压获取设备所在的海拔高度。
**系统能力**:SystemCapability.Sensors.Sensor
**参数:**
-| 参数名 | 类型 | 必填 | 说明 |
-| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
-| type | [SensorType](#sensortype) | 是 | 要取消订阅的旋转矢量传感器类型为SENSOR_TYPE_ID_ROTATION_VECTOR。 |
-| callback | Callback<[RotationVectorResponse](#rotationvectorresponse)> | 是 | 取消注册旋转矢量传感器的回调函数,上报的数据类型为RotationVectorResponse。 |
+| 参数名 | 类型 | 必填 | 说明 |
+| --------------- | ------ | ---- | ------------------------------------- |
+| seaPressure | number | 是 | 表示海平面气压值,单位为hPa。 |
+| currentPressure | number | 是 | 表示设备所在高度的气压值,单位为hPa。 |
+
+**返回值:**
+
+| 类型 | 说明 |
+| --------------------- | ------------------------------------ |
+| Promise<number> | 返回设备所在的海拔高度(单位:米)。 |
**示例:**
```js
-function callback(data) {
- console.info('X-coordinate component: ' + data.x);
- console.info('Y-coordinate component: ' + data.y);
- console.info('Z-coordinate component: ' + data.z);
- console.info('Scalar quantity: ' + data.w);
+try {
+ const promise = sensor.getDeviceAltitude (0, 200);
+ promise.then((data) => {
+ console.info('sensor_getDeviceAltitude_Promise success', data);
+ }).catch((err) => {
+ console.error("Operation failed");
+ })
+} catch (err) {
+ console.error('getDeviceAltitude failed. Error code: ' + err.code + '; message: ' + err.message);
}
-sensor.off(sensor.SensorType.SENSOR_TYPE_ID_ROTATION_VECTOR, callback);
```
-### SIGNIFICANT_MOTION
+## sensor.getInclination9+
-off(type: SensorType.SENSOR_TYPE_ID_SIGNIFICANT_MOTION, callback?: Callback<SignificantMotionResponse>): void
+getInclination(inclinationMatrix: Array<number>, callback: AsyncCallback<number>): void
-取消订阅传感器数据。
+从倾角矩阵计算地磁倾角的弧度。
**系统能力**:SystemCapability.Sensors.Sensor
-**参数:**
+**参数:**
-| 参数名 | 类型 | 必填 | 说明 |
-| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
-| type | [SensorType](#sensortype) | 是 | 要取消订阅的大幅动作传感器类型为SENSOR_TYPE_ID_SIGNIFICANT_MOTION。 |
-| callback | Callback<[SignificantMotionResponse](#significantmotionresponse)> | 是 | 取消注册有效运动传感器的回调函数,上报的数据类型为SignificantMotionResponse。 |
+| 参数名 | 类型 | 必填 | 说明 |
+| ----------------- | --------------------------- | ---- | ---------------------------- |
+| inclinationMatrix | Array<number> | 是 | 表示倾斜矩阵。 |
+| callback | AsyncCallback<number> | 是 | 返回地磁倾斜角,单位为弧度。 |
**示例:**
```js
-function callback(data) {
- console.info('Scalar data: ' + data.scalar);
+try {
+ sensor.getInclination ([1, 0, 0, 0, 1, 0, 0, 0, 1], function(data) {
+ console.info('Successed to get getInclination interface get data: ' + data);
+ })
+} catch (err) {
+ console.error('getInclination failed. Error code: ' + err.code + '; message: ' + err.message);
}
-sensor.off(sensor.SensorType.SENSOR_TYPE_ID_SIGNIFICANT_MOTION, callback);
```
-### WEAR_DETECTION
+## sensor.getInclination9+
-off(type: SensorType.SENSOR_TYPE_ID_WEAR_DETECTION, callback?: Callback<WearDetectionResponse>): void
+ getInclination(inclinationMatrix: Array<number>): Promise<number>
-取消订阅传感器数据。
+ 从倾角矩阵计算地磁倾角的弧度。
**系统能力**:SystemCapability.Sensors.Sensor
-**参数:**
+**参数:**
-| 参数名 | 类型 | 必填 | 说明 |
-| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
-| type | [SensorType](#sensortype) | 是 | 要取消订阅的佩戴检测传感器类型为SENSOR_TYPE_ID_WEAR_DETECTION。 |
-| callback | Callback<[WearDetectionResponse](#weardetectionresponse)> | 是 | 取消注册佩戴检测传感器的回调函数,上报的数据类型为WearDetectionResponse。 |
+| 参数名 | 类型 | 必填 | 说明 |
+| ----------------- | ------------------- | ---- | -------------- |
+| inclinationMatrix | Array<number> | 是 | 表示倾斜矩阵。 |
+
+**返回值:**
+
+| 类型 | 说明 |
+| --------------------- | ---------------------------- |
+| Promise<number> | 返回地磁倾斜角,单位为弧度。 |
**示例:**
```js
-function accCallback(data) {
- console.info('Wear status: ' + data.value);
+try {
+ const promise = sensor.getInclination ([1, 0, 0, 0, 1, 0, 0, 0, 1]);
+ promise.then((data) => {
+ console.info('getInclination_promise successed', data);
+ }).catch((err) => {
+ console.error("Operation failed");
+ })
+} catch (err) {
+ console.error('getInclination failed. Error code: ' + err.code + '; message: ' + err.message);
}
-sensor.off(sensor.SensorType.SENSOR_TYPE_ID_WEAR_DETECTION, accCallback);
```
-## sensor.transformCoordinateSystem
+## sensor.getAngleVariation9+
-transformCoordinateSystem(inRotationVector: Array<number>, coordinates: CoordinatesOptions, callback: AsyncCallback<Array<number>>): void
+ getAngleVariation(currentRotationMatrix: Array<number>, preRotationMatrix: Array<number>,
+ callback: AsyncCallback): void
-旋转提供的旋转矩阵,使其可以以不同的方式表示坐标系。
+得到两个旋转矩阵之间的角度变化。
**系统能力**:SystemCapability.Sensors.Sensor
-**参数:**
+**参数:**
-| 参数名 | 类型 | 必填 | 说明 |
-| ---------------- | ---------------------------------------- | ---- | ----------- |
-| inRotationVector | Array<number> | 是 | 表示旋转矩阵。 |
-| coordinates | [CoordinatesOptions](#coordinatesoptions) | 是 | 表示坐标系方向。 |
-| callback | AsyncCallback<Array<number>> | 是 | 返回转换后的旋转矩阵。 |
+| 参数名 | 类型 | 必填 | 说明 |
+| --------------------- | ---------------------------------------- | ---- | --------------------------------- |
+| currentRotationMatrix | Array<number> | 是 | 表示当前旋转矩阵。 |
+| preRotationMatrix | Array<number> | 是 | 表示旋转矩阵。 |
+| callback | AsyncCallback<Array<number>> | 是 | 返回z、x、y轴方向的旋转角度变化。 |
**示例:**
```js
-sensor.transformCoordinateSystem([1, 0, 0, 0, 1, 0, 0, 0, 1], {x:2, y:3}, function(err, data) {
- if (err) {
- console.error("Operation failed. Error code: " + err.code + ", message: " + err.message);
- return;
- }
- console.info("Operation successed. Data obtained: " + data);
- for (var i=0; i < data.length; i++) {
- console.info("transformCoordinateSystem data[ " + i + "] = " + data[i]);
- }
- })
+try {
+ sensor.getAngleVariation([1,0,0,0,1,0,0,0,1], [1, 0, 0, 0, 0.87, -0.50, 0, 0.50, 0.87], function(data) {
+ for (var i=0; i < data.length; i++) {
+ console.info("data[" + i + "]: " + data[i]);
+ }
+ })
+} catch (err) {
+ console.error('getAngleVariation failed. Error code: ' + err.code + '; message: ' + err.message);
+}
```
-## sensor.transformCoordinateSystem
-transformCoordinateSystem(inRotationVector: Array<number>, coordinates: CoordinatesOptions): Promise<Array<number>>
+## sensor.getAngleVariation9+
-旋转提供的旋转矩阵,使其可以以不同的方式表示坐标系。
+getAngleVariation(currentRotationMatrix: Array<number>, preRotationMatrix: Array<number>): Promise
+
+得到两个旋转矩阵之间的角度变化。
**系统能力**:SystemCapability.Sensors.Sensor
-**参数:**
+**参数:**
-| 参数名 | 类型 | 必填 | 说明 |
-| ---------------- | ---------------------------------------- | ---- | -------- |
-| inRotationVector | Array<number> | 是 | 表示旋转矩阵。 |
-| coordinates | [CoordinatesOptions](#coordinatesoptions) | 是 | 表示坐标系方向。 |
+| 参数名 | 类型 | 必填 | 说明 |
+| --------------------- | ------------------- | ---- | ------------------ |
+| currentRotationMatrix | Array<number> | 是 | 表示当前旋转矩阵。 |
+| preRotationMatrix | Array<number> | 是 | |
**返回值:**
-| 类型 | 说明 |
-| ---------------------------------- | ----------- |
-| Promise<Array<number>> | 返回转换后的旋转矩阵。 |
+| 类型 | 说明 |
+| ---------------------------------- | --------------------------------- |
+| Promise<Array<number>> | 返回z、x、y轴方向的旋转角度变化。 |
**示例:**
```js
-const promise = sensor.transformCoordinateSystem([1, 0, 0, 0, 1, 0, 0, 0, 1], {x:2, y:3});
- promise.then((data) => {
- console.info("Operation successed.");
- for (var i=0; i < data.length; i++) {
- console.info("transformCoordinateSystem data[ " + i + "] = " + data[i]);
- }
- }).catch((err) => {
- console.info("Operation failed");
-})
+try {
+ const promise = sensor.getAngleVariation([1,0,0,0,1,0,0,0,1], [1,0,0,0,0.87,-0.50,0,0.50,0.87]);
+ promise.then((data) => {
+ for (var i=0; i < data.length; i++) {
+ console.info('data[' + i + ']: ' + data[i]);
+ }
+ }).catch((reason) => {
+ console.info('promise::catch ', reason);
+ })
+} catch (err) {
+ console.error('getAngleVariation failed. Error code: ' + err.code + '; message: ' + err.message);
+}
```
-## sensor.getGeomagneticField
+## sensor.getRotationMatrix9+
-getGeomagneticField(locationOptions: LocationOptions, timeMillis: number, callback: AsyncCallback<GeomagneticResponse>): void
+getRotationMatrix(rotationVector: Array<number>, callback: AsyncCallback): void
-获取地球上特定位置的地磁场。
+将旋转向量转换为旋转矩阵。
**系统能力**:SystemCapability.Sensors.Sensor
**参数:**
-| 参数名 | 类型 | 必填 | 说明 |
-| --------------- | ------------------------------------------------------------ | ---- | ---------------------------------- |
-| locationOptions | [LocationOptions](#locationoptions) | 是 | 地理位置。 |
-| timeMillis | number | 是 | 表示获取磁偏角的时间,单位为毫秒。 |
-| callback | AsyncCallback<[GeomagneticResponse](#geomagneticresponse)> | 是 | 返回磁场信息。 |
+
+| 参数名 | 类型 | 必填 | 说明 |
+| -------------- | ---------------------------------------- | ---- | -------------- |
+| rotationVector | Array<number> | 是 | 表示旋转矢量。 |
+| callback | AsyncCallback<Array<number>> | 是 | 返回旋转矩阵。 |
**示例:**
+
```js
-sensor.getGeomagneticField({latitude:80, longitude:0, altitude:0}, 1580486400000, function(err, data) {
- if (err) {
- console.error('Operation failed. Error code: ' + err.code + '; message: ' + err.message);
- return;
- }
- console.info('sensor_getGeomagneticField_callback x: ' + data.x + ',y: ' + data.y + ',z: ' +
- data.z + ',geomagneticDip: ' + data.geomagneticDip + ',deflectionAngle: ' + data.deflectionAngle +
- ',levelIntensity: ' + data.levelIntensity + ',totalIntensity: ' + data.totalIntensity);
-});
+try {
+ sensor.getRotationMatrix([0.20046076, 0.21907, 0.73978853, 0.60376877], function(data) {
+ for (var i=0; i < data.length; i++) {
+ console.info('data[' + i + ']: ' + data[i]);
+ }
+ })
+} catch (err) {
+ console.error('getRotationMatrix failed. Error code: ' + err.code + '; message: ' + err.message);
+}
```
-## sensor.getGeomagneticField
-getGeomagneticField(locationOptions: LocationOptions, timeMillis: number): Promise<GeomagneticResponse>
+## sensor.getRotationMatrix9+
-获取地球上特定位置的地磁场。
+getRotationMatrix(rotationVector: Array<number>): Promise
+
+将旋转向量转换为旋转矩阵。
**系统能力**:SystemCapability.Sensors.Sensor
-**参数:**
-| 参数名 | 类型 | 必填 | 说明 |
-| --------------- | ----------------------------------- | ---- | ----------------- |
-| locationOptions | [LocationOptions](#locationoptions) | 是 | 地理位置。 |
-| timeMillis | number | 是 | 表示获取磁偏角的时间,单位为毫秒。 |
+**参数:**
-**返回值:**
-| 类型 | 说明 |
-| ---------------------------------------- | ------- |
-| Promise<[GeomagneticResponse](#geomagneticresponse)> | 返回磁场信息。 |
+| 参数名 | 类型 | 必填 | 说明 |
+| -------------- | ------------------- | ---- | -------------- |
+| rotationVector | Array<number> | 是 | 表示旋转矢量。 |
+
+**返回值:**
+
+| 类型 | 说明 |
+| ---------------------------------- | -------------- |
+| Promise<Array<number>> | 返回旋转矩阵。 |
**示例:**
- ```js
- const promise = sensor.getGeomagneticField({latitude:80, longitude:0, altitude:0}, 1580486400000);
+
+```js
+try {
+ const promise = sensor.getRotationMatrix([0.20046076, 0.21907, 0.73978853, 0.60376877]);
promise.then((data) => {
- console.info('sensor_getGeomagneticField_promise x: ' + data.x + ',y: ' + data.y + ',z: ' +
- data.z + ',geomagneticDip: ' + data.geomagneticDip + ',deflectionAngle: ' + data.deflectionAngle +
- ',levelIntensity: ' + data.levelIntensity + ',totalIntensity: ' + data.totalIntensity);
+ for (var i=0; i < data.length; i++) {
+ console.info('data[' + i + ']: ' + data[i]);
+ }
}).catch((reason) => {
- console.info('Operation failed.');
+ console.info('promise::catch ', reason);
})
- ```
+} catch (err) {
+ console.error('getRotationMatrix failed. Error code: ' + err.code + '; message: ' + err.message);
+}
+```
-## sensor.getAltitude
+## sensor.transformRotationMatrix9+
-getAltitude(seaPressure: number, currentPressure: number, callback: AsyncCallback<number>): void
+transformRotationMatrix(inRotationVector: Array<number>, coordinates: CoordinatesOptions,
+ callback: AsyncCallback): void
-根据气压值获取设备所在的海拔高度。
+旋转提供的旋转矩阵,使其可以以不同的方式表示坐标系。
**系统能力**:SystemCapability.Sensors.Sensor
**参数:**
-| 参数名 | 类型 | 必填 | 说明 |
-| --------------- | --------------------------- | ---- | -------------------- |
-| seaPressure | number | 是 | 表示海平面气压值,单位为hPa。 |
-| currentPressure | number | 是 | 表示设备所在高度的气压值,单位为hPa。 |
-| callback | AsyncCallback<number> | 是 | 返回设备所在的海拔高度,单位为米。 |
+| 参数名 | 类型 | 必填 | 说明 |
+| ---------------- | ----------------------------------------- | ---- | ---------------------- |
+| inRotationVector | Array<number> | 是 | 表示旋转矩阵。 |
+| coordinates | [CoordinatesOptions](#coordinatesoptions) | 是 | 表示坐标系方向。 |
+| callback | AsyncCallback<Array<number>> | 是 | 返回转换后的旋转矩阵。 |
**示例:**
- ```js
- sensor.getAltitude(0, 200, function(err, data) {
- if (err) {
- console.error(
- "Operation failed. Error code: " + err.code + ", message: " + err.message);
- return;
- }
- console.info("Successed to get getAltitude interface get data: " + data);
- });
- ```
+```js
+try {
+ sensor.transformRotationMatrix([1, 0, 0, 0, 1, 0, 0, 0, 1], {x:2, y:3}, function(data) {
+ for (var i=0; i < data.length; i++) {
+ console.info('transformRotationMatrix data[' + i + '] = ' + data[i]);
+ }
+ })
+} catch (err) {
+ console.error('transformRotationMatrix failed. Error code: ' + err.code + '; message: ' + err.message);
+}
+```
-## sensor.getAltitude
+## sensor.transformRotationMatrix9+
-getAltitude(seaPressure: number, currentPressure: number): Promise<number>
+transformRotationMatrix(inRotationVector: Array<number>, coordinates: CoordinatesOptions): Promise
-根据气压值获取设备所在的海拔高度。
+旋转提供的旋转矩阵,使其可以以不同的方式表示坐标系。
+
+**系统能力**:SystemCapability.Sensors.Sensor
+
+**参数:**
+
+| 参数名 | 类型 | 必填 | 说明 |
+| ---------------- | ----------------------------------------- | ---- | ---------------- |
+| inRotationVector | Array<number> | 是 | 表示旋转矩阵。 |
+| coordinates | [CoordinatesOptions](#coordinatesoptions) | 是 | 表示坐标系方向。 |
+
+**返回值:**
+
+| 类型 | 说明 |
+| ---------------------------------- | ---------------------- |
+| Promise<Array<number>> | 返回转换后的旋转矩阵。 |
+
+**示例:**
+
+```js
+try {
+ const promise = sensor.transformRotationMatrix([1, 0, 0, 0, 1, 0, 0, 0, 1], {x:2, y:3});
+ promise.then((data) => {
+ for (var i=0; i < data.length; i++) {
+ console.info('transformRotationMatrix data[' + i + '] = ' + data[i]);
+ }
+ }).catch((err) => {
+ console.info("Operation failed");
+})
+} catch (err) {
+ console.error('transformRotationMatrix failed. Error code: ' + err.code + '; message: ' + err.message);
+}
+```
+
+## sensor.getQuaternion9+
+
+getQuaternion(rotationVector: Array<number>, callback: AsyncCallback): void
+
+将旋转向量转换为归一化四元数。
**系统能力**:SystemCapability.Sensors.Sensor
**参数:**
-| 参数名 | 类型 | 必填 | 说明 |
-| --------------- | ------ | ---- | -------------------- |
-| seaPressure | number | 是 | 表示海平面气压值,单位为hPa。 |
-| currentPressure | number | 是 | 表示设备所在高度的气压值,单位为hPa。 |
+| 参数名 | 类型 | 必填 | 说明 |
+| -------------- | ---------------------------------------- | ---- | -------------- |
+| rotationVector | Array<number> | 是 | 表示旋转矢量。 |
+| callback | AsyncCallback<Array<number>> | 是 | 返回四元数。 |
-**返回值:**
+**示例:**
-| 类型 | 说明 |
-| --------------------- | ------------------ |
-| Promise<number> | 返回设备所在的海拔高度(单位:米)。 |
+```js
+try {
+ sensor.getQuaternion ([0.20046076, 0.21907, 0.73978853, 0.60376877], function(data) {
+ for (var i=0; i < data.length; i++) {
+ console.info('data[' + i + ']: ' + data[i]);
+ }
+ })
+} catch (err) {
+ console.error('getQuaternion failed. Error code: ' + err.code + '; message: ' + err.message);
+}
+```
+
+## sensor.getQuaternion9+
+
+getQuaternion(rotationVector: Array<number>): Promise
+
+将旋转向量转换为归一化四元数。
+
+**系统能力**:SystemCapability.Sensors.Sensor
+
+**参数:**
+
+| 参数名 | 类型 | 必填 | 说明 |
+| -------------- | ------------------- | ---- | -------------- |
+| rotationVector | Array<number> | 是 | 表示旋转矢量。 |
+
+**返回值:**
+
+| 类型 | 说明 |
+| ---------------------------------- | ------------ |
+| Promise<Array<number>> | 返回四元数。 |
**示例:**
- ```js
- const promise = sensor.getAltitude(0, 200);
+```js
+try {
+ const promise = sensor.getQuaternion([0.20046076, 0.21907, 0.73978853, 0.60376877]);
promise.then((data) => {
- console.info(' sensor_getAltitude_Promise success', data);
+ console.info('getQuaternionn_promise successed');
+ for (var i=0; i < data.length; i++) {
+ console.info('data[' + i + ']: ' + data[i]);
+ }
}).catch((err) => {
- console.error("Operation failed");
+ console.info('promise failed');
})
- ```
-
+} catch (err) {
+ console.error('getQuaternion failed. Error code: ' + err.code + '; message: ' + err.message);
+}
+```
-## sensor.getGeomagneticDip
+## sensor.getOrientation9+
-getGeomagneticDip(inclinationMatrix: Array<number>, callback: AsyncCallback<number>): void
+getOrientation(rotationMatrix: Array<number>, callback: AsyncCallback): void
-根据倾斜矩阵计算地磁倾斜角。
+根据旋转矩阵计算设备的方向。
**系统能力**:SystemCapability.Sensors.Sensor
-**参数:**
+**参数:**
-| 参数名 | 类型 | 必填 | 说明 |
-| ----------------- | --------------------------- | ---- | -------------- |
-| inclinationMatrix | Array<number> | 是 | 表示倾斜矩阵。 |
-| callback | AsyncCallback<number> | 是 | 返回地磁倾斜角,单位为弧度。 |
+| 参数名 | 类型 | 必填 | 说明 |
+| -------------- | ---------------------------------------- | ---- | --------------------------------- |
+| rotationMatrix | Array<number> | 是 | 表示旋转矩阵。 |
+| callback | AsyncCallback<Array<number>> | 是 | 返回围绕z、x、y轴方向的旋转角度。 |
**示例:**
- ```js
- sensor.getGeomagneticDip([1, 0, 0, 0, 1, 0, 0, 0, 1], function(err, data) {
- if (err) {
- console.error('SensorJsAPI--->Failed to register data, error code is:' + err.code + ', message: ' +
- err.message);
- return;
+```js
+try {
+ sensor.getOrientation([1, 0, 0, 0, 1, 0, 0, 0, 1], function(data) {
+ console.info("SensorJsAPI--->Successed to get getOrientation interface get data: " + data);
+ for (var i = 1; i < data.length; i++) {
+ console.info('sensor_getOrientation_callback ' + data[i]);
}
- console.info("Successed to get getGeomagneticDip interface get data: " + data);
})
- ```
+} catch (err) {
+ console.error('getOrientation failed. Error code: ' + err.code + '; message: ' + err.message);
+}
+```
-## sensor.getGeomagneticDip
+## sensor.getOrientation9+
-getGeomagneticDip(inclinationMatrix: Array<number>): Promise<number>
+getOrientation(rotationMatrix: Array<number>): Promise
-根据倾斜矩阵计算地磁倾斜角。
+根据旋转矩阵计算设备的方向。
**系统能力**:SystemCapability.Sensors.Sensor
-**参数:**
+**参数:**
-| 参数名 | 类型 | 必填 | 说明 |
-| ----------------- | ------------------- | ---- | ------- |
-| inclinationMatrix | Array<number> | 是 | 表示倾斜矩阵。 |
+| 参数名 | 类型 | 必填 | 说明 |
+| -------------- | ------------------- | ---- | -------------- |
+| rotationMatrix | Array<number> | 是 | 表示旋转矩阵。 |
-**返回值:**
+**返回值:**
-| 类型 | 说明 |
-| --------------------- | -------------- |
-| Promise<number> | 返回地磁倾斜角,单位为弧度。 |
+| 类型 | 说明 |
+| ---------------------------------- | --------------------------------- |
+| Promise<Array<number>> | 返回围绕z、x、y轴方向的旋转角度。 |
**示例:**
- ```js
- const promise = sensor.getGeomagneticDip([1, 0, 0, 0, 1, 0, 0, 0, 1]);
+```js
+try {
+ const promise = sensor.getOrientation([1, 0, 0, 0, 1, 0, 0, 0, 1]);
promise.then((data) => {
- console.info('getGeomagneticDip_promise successed', data);
+ console.info('sensor_getOrientation_Promise success', data);
+ for (var i = 1; i < data.length; i++) {
+ console.info('sensor_getOrientation_promise ' + data[i]);
+ }
}).catch((err) => {
- console.error("Operation failed");
+ console.info('promise failed');
})
- ```
+} catch (err) {
+ console.error('getOrientation failed. Error code: ' + err.code + '; message: ' + err.message);
+}
+```
-## sensor. getAngleModify
+## sensor.getRotationMatrix9+
-getAngleModify(currentRotationMatrix: Array<number>, preRotationMatrix: Array<number>, callback: AsyncCallback<Array<number>>): void
+getRotationMatrix(gravity: Array<number>, geomagnetic: Array<number>, callback: AsyncCallback<RotationMatrixResponse>): void
-获取两个旋转矩阵之间的角度变化。
+根据重力矢量和地磁矢量计算旋转矩阵。
**系统能力**:SystemCapability.Sensors.Sensor
**参数:**
-| 参数名 | 类型 | 必填 | 说明 |
-| --------------------- | ---------------------------------------- | ---- | ------------------ |
-| currentRotationMatrix | Array<number> | 是 | 表示当前旋转矩阵。 |
-| preRotationMatrix | Array<number> | 是 | 表示旋转矩阵。 |
-| callback | AsyncCallback<Array<number>> | 是 | 返回z、x、y轴方向的旋转角度变化。 |
+| 参数名 | 类型 | 必填 | 说明 |
+| ----------- | ------------------------------------------------------------ | ---- | -------------- |
+| gravity | Array<number> | 是 | 表示重力向量。 |
+| geomagnetic | Array<number> | 是 | 表示地磁矢量。 |
+| callback | AsyncCallback<[RotationMatrixResponse](#rotationmatrixresponse)> | 是 | 返回旋转矩阵。 |
-**示例:**
+**示例:**
- ```js
- sensor. getAngleModify([1,0,0,0,1,0,0,0,1], [1, 0, 0, 0, 0.87, -0.50, 0, 0.50, 0.87], function(err, data) {
- if (err) {
- console.error('Failed to register data, error code is: ' + err.code + ', message: ' +
- err.message);
- return;
- }
- for (var i=0; i < data.length; i++) {
- console.info("data[" + i + "]: " + data[i]);
- }
+```js
+try {
+ sensor.getRotationMatrix ([-0.27775216, 0.5351276, 9.788099], [210.87253, -78.6096, -111.44444], function(data) {
+ console.info('sensor_getRotationMatrix_callback ' + JSON.stringify(data));
})
- ```
-
+} catch (err) {
+ console.error('getRotationMatrix failed. Error code: ' + err.code + '; message: ' + err.message);
+}
+```
-## sensor. getAngleModify
+## sensor.getRotationMatrix9+
-getAngleModify(currentRotationMatrix: Array<number>, preRotationMatrix: Array<number>): Promise<Array<number>>
+getRotationMatrix(gravity: Array<number>, geomagnetic: Array<number>,): Promise<RotationMatrixResponse>
-获取两个旋转矩阵之间的角度变化。
+根据重力矢量和地磁矢量计算旋转矩阵。
**系统能力**:SystemCapability.Sensors.Sensor
**参数:**
-| 参数名 | 类型 | 必填 | 说明 |
-| --------------------- | ------------------- | ---- | --------- |
-| currentRotationMatrix | Array<number> | 是 | 表示当前旋转矩阵。 |
-| preRotationMatrix | Array<number> | 是 | 表示旋转矩阵。 |
+| 参数名 | 类型 | 必填 | 说明 |
+| ----------- | ------------------- | ---- | -------------- |
+| gravity | Array<number> | 是 | 表示重力向量。 |
+| geomagnetic | Array<number> | 是 | 表示地磁矢量。 |
**返回值:**
-| 类型 | 说明 |
-| ---------------------------------- | ------------------ |
-| Promise<Array<number>> | 返回z、x、y轴方向的旋转角度变化。 |
+| 类型 | 说明 |
+| ------------------------------------------------------------ | -------------- |
+| Promise<[RotationMatrixResponse](#rotationmatrixresponse)> | 返回旋转矩阵。 |
**示例:**
- ```js
- const promise = sensor.getAngleModify([1,0,0,0,1,0,0,0,1], [1,0,0,0,0.87,-0.50,0,0.50,0.87]);
+```js
+try {
+ const promise = sensor.getRotationMatrix ([-0.27775216, 0.5351276, 9.788099], [210.87253, -78.6096, -111.44444]);
promise.then((data) => {
- console.info('getAngleModifiy_promise success');
- for (var i=0; i < data.length; i++) {
- console.info("data[" + i + "]: " + data[i]);
- }
- }).catch((reason) => {
- console.info("promise::catch", reason);
+ console.info('sensor_getRotationMatrix_callback ' + JSON.stringify(data));
+ }).catch((err) => {
+ console.info('promise failed');
})
- ```
-
+} catch (err) {
+ console.error('getRotationMatrix failed. Error code: ' + err.code + '; message: ' + err.message);
+}
+```
-## sensor.createRotationMatrix
+## sensor.getSensorList9+
-createRotationMatrix(rotationVector: Array<number>, callback: AsyncCallback<Array<number>>): void
+ getSensorList(callback: AsyncCallback): void
-将旋转矢量转换为旋转矩阵。
+获取设备上的所有传感器信息。
**系统能力**:SystemCapability.Sensors.Sensor
**参数:**
-| 参数名 | 类型 | 必填 | 说明 |
-| -------------- | ---------------------------------------- | ---- | ------- |
-| rotationVector | Array<number> | 是 | 表示旋转矢量。 |
-| callback | AsyncCallback<Array<number>> | 是 | 返回旋转矩阵。 |
+| 参数名 | 类型 | 必填 | 说明 |
+| -------- | ---------------------------------------------- | ---- | ---------------- |
+| callback | AsyncCallback | 是 | 返回传感器列表。 |
**示例:**
- ```js
- sensor.createRotationMatrix([0.20046076, 0.21907, 0.73978853, 0.60376877], function(err, data) {
- if (err) {
- console.error('SensorJsAPI--->Failed to register data, error code is: ' + err.code + ', message: ' +
- err.message);
- return;
- }
- for (var i=0; i < data.length; i++) {
- console.info("data[" + i + "]: " + data[i]);
- }
- })
- ```
+```js
+try {
+ sensor.getSensorList((data) => {
+ console.info('getSensorList callback in ' + data.length);
+ for (var i = 0; i < data.length; i++) {
+ console.info("getSensorList " + JSON.stringify(data[i]));
+ }
+ });
+} catch (err) {
+ console.error('getSensorList failed. Error code: ' + err.code + '; message: ' + err.message);
+}
+```
+## sensor.getSensorList9+
-## sensor.createRotationMatrix
+ getSensorList(): Promise< Array<Sensor>>
-createRotationMatrix(rotationVector: Array<number>): Promise<Array<number>>
+获取设备上的所有传感器信息。
-将旋转矢量转换为旋转矩阵。
+**系统能力**:SystemCapability.Sensors.Sensor
+
+**返回值:**
+
+| 参数名 | 类型 | 必填 | 说明 |
+| ------- | ---------------------------------------- | ---- | ---------------- |
+| promise | Promise | 是 | 返回传感器列表。 |
+
+**示例:**
+
+```js
+try {
+ sensor.getSensorList().then((data) => {
+ console.info('getSensorList promise in ' + data.length);
+ for (var i = 0; i < data.length; i++) {
+ console.info("getSensorList " + JSON.stringify(data[i]));
+ }
+ }, (error)=>{
+ console.error('getSensorList failed');
+ });
+} catch (err) {
+ console.error('getSensorList failed. Error code: ' + err.code + '; message: ' + err.message);
+}
+```
+
+## sensor.getSingleSensor9+
+
+getSingleSensor(type: SensorId, callback: AsyncCallback<Sensor>): void
+
+获取指定类型的传感器信息。
**系统能力**:SystemCapability.Sensors.Sensor
**参数:**
-| 参数名 | 类型 | 必填 | 说明 |
-| -------------- | ------------------- | ---- | ------- |
-| rotationVector | Array<number> | 是 | 表示旋转矢量。 |
+| 参数名 | 类型 | 必填 | 说明 |
+| -------- | --------------------------------------- | ---- | ---------------- |
+| type | [SensorId](#sensorid9) | 是 | 传感器类型。 |
+| callback | AsyncCallback<[Sensor](#sensor9)> | 是 | 返回传感器信息。 |
+
+**示例:**
+
+```js
+try {
+ sensor.getSingleSensor(sensor.SensorId.SENSOR_TYPE_ID_ACCELEROMETER, (error, data) => {
+ console.info('getSingleSensor ' + JSON.stringify(data));
+ });
+} catch (err) {
+ console.error('getSingleSensor failed. Error code: ' + err.code + '; message: ' + err.message);
+}
+```
+
+## sensor.getSingleSensor9+
+
+ getSingleSensor(type: SensorId): Promise<Sensor>
+
+获取指定类型的传感器信息。
+
+**系统能力**:SystemCapability.Sensors.Sensor
+
+**参数:**
+
+| 参数名 | 类型 | 必填 | 说明 |
+| ------ | ---------------------- | ---- | ------------ |
+| type | [SensorId](#sensorid9) | 是 | 传感器类型。 |
**返回值:**
-| 类型 | 说明 |
-| ---------------------------------- | ------- |
-| Promise<Array<number>> | 返回旋转矩阵。 |
+| 参数名 | 类型 | 必填 | 说明 |
+| ------- | --------------------------------- | ---- | ---------------- |
+| promise | Promise<[Sensor](#sensor9)> | 是 | 返回传感器信息。 |
+
+**示例:**
+
+```js
+try {
+ sensor.getSingleSensor(sensor.SensorId.SENSOR_TYPE_ID_ACCELEROMETER).then((data) => {
+ console.info('getSingleSensor '+ JSON.stringify(data));
+ }, (error)=>{
+ console.error('getSingleSensor failed');
+ });
+} catch (err) {
+ console.error('getSingleSensor failed. Error code: ' + err.code + '; message: ' + err.message);
+}
+```
+
+## SensorId9+
+
+表示要订阅或取消订阅的传感器类型。
+
+**系统能力**:以下各项对应的系统能力均为SystemCapability.Sensors.Sensor
+
+| 名称 | 默认值 | 说明 |
+| --------------------------- | ------ | ---------------------- |
+| ACCELEROMETER | 1 | 加速度传感器。 |
+| GYROSCOPE | 2 | 陀螺仪传感器。 |
+| AMBIENT_LIGHT | 5 | 环境光传感器。 |
+| MAGNETIC_FIELD | 6 | 磁场传感器。 |
+| BAROMETER | 8 | 气压计传感器。 |
+| HALL | 10 | 霍尔传感器。 |
+| PROXIMITY | 12 | 接近光传感器。 |
+| HUMIDITY | 13 | 湿度传感器。 |
+| ORIENTATION | 256 | 方向传感器。 |
+| GRAVITY | 257 | 重力传感器。 |
+| LINEAR_ACCELEROMETER | 258 | 线性加速度传感器。 |
+| ROTATION_VECTOR | 259 | 旋转矢量传感器。 |
+| AMBIENT_TEMPERATURE | 260 | 环境温度传感器。 |
+| MAGNETIC_FIELD_UNCALIBRATED | 261 | 未校准磁场传感器。 |
+| GYROSCOPE_UNCALIBRATED | 263 | 未校准陀螺仪传感器。 |
+| SIGNIFICANT_MOTION | 264 | 有效运动传感器。 |
+| PEDOMETER_DETECTION | 265 | 计步检测传感器。 |
+| PEDOMETER | 266 | 计步传感器。 |
+| HEART_RATE | 278 | 心率传感器。 |
+| WEAR_DETECTION | 280 | 佩戴检测传感器。 |
+| ACCELEROMETER_UNCALIBRATED | 281 | 未校准加速度计传感器。 |
+
+## SensorType(deprecated)
+
+表示要订阅或取消订阅的传感器类型。
+
+**系统能力**:以下各项对应的系统能力均为SystemCapability.Sensors.Sensor
+
+
+| 名称 | 默认值 | 说明 |
+| ------------------------------------------ | ------ | ---------------------- |
+| SENSOR_TYPE_ID_ACCELEROMETER | 1 | 加速度传感器。 |
+| SENSOR_TYPE_ID_GYROSCOPE | 2 | 陀螺仪传感器。 |
+| SENSOR_TYPE_ID_AMBIENT_LIGHT | 5 | 环境光传感器。 |
+| SENSOR_TYPE_ID_MAGNETIC_FIELD | 6 | 磁场传感器。 |
+| SENSOR_TYPE_ID_BAROMETER | 8 | 气压计传感器。 |
+| SENSOR_TYPE_ID_HALL | 10 | 霍尔传感器。 |
+| SENSOR_TYPE_ID_PROXIMITY | 12 | 接近光传感器。 |
+| SENSOR_TYPE_ID_HUMIDITY | 13 | 湿度传感器。 |
+| SENSOR_TYPE_ID_ORIENTATION | 256 | 方向传感器。 |
+| SENSOR_TYPE_ID_GRAVITY | 257 | 重力传感器。 |
+| SENSOR_TYPE_ID_LINEAR_ACCELERATION | 258 | 线性加速度传感器。 |
+| SENSOR_TYPE_ID_ROTATION_VECTOR | 259 | 旋转矢量传感器。 |
+| SENSOR_TYPE_ID_AMBIENT_TEMPERATURE | 260 | 环境温度传感器。 |
+| SENSOR_TYPE_ID_MAGNETIC_FIELD_UNCALIBRATED | 261 | 未校准磁场传感器。 |
+| SENSOR_TYPE_ID_GYROSCOPE_UNCALIBRATED | 263 | 未校准陀螺仪传感器。 |
+| SENSOR_TYPE_ID_SIGNIFICANT_MOTION | 264 | 有效运动传感器。 |
+| SENSOR_TYPE_ID_PEDOMETER_DETECTION | 265 | 计步检测传感器。 |
+| SENSOR_TYPE_ID_PEDOMETER | 266 | 计步传感器。 |
+| SENSOR_TYPE_ID_HEART_RATE | 278 | 心率传感器。 |
+| SENSOR_TYPE_ID_WEAR_DETECTION | 280 | 佩戴检测传感器。 |
+| SENSOR_TYPE_ID_ACCELEROMETER_UNCALIBRATED | 281 | 未校准加速度计传感器。 |
+
+
+## Response
+
+传感器数据的时间戳。
+
+**系统能力**:以下各项对应的系统能力均为SystemCapability.Sensors.Sensor
+
+| 名称 | 参数类型 | 可读 | 可写 | 说明 |
+| --------- | -------- | ---- | ---- | ------------------------ |
+| timestamp | number | 是 | 是 | 传感器数据上报的时间戳。 |
+
+## Sensor9+
+
+指示传感器信息。
+
+**系统能力**:以下各项对应的系统能力均为SystemCapability.Sensors.Sensor
+
+| 名称 | 参数类型 | 说明 |
+| --------------- | -------- | ---------------------- |
+| sensorName | string | 传感器名称。 |
+| venderName | string | 传感器供应商。 |
+| firmwareVersion | string | 传感器固件版本。 |
+| hardwareVersion | string | 传感器硬件版本。 |
+| sensorId | number | 传感器类型id。 |
+| maxRange | number | 传感器的最大测量范围。 |
+| minSamplePeriod | number | 允许的最小采样周期。 |
+| maxSamplePeriod | number | 允许的最大采样周期。 |
+| precision | number | 传感器精度。 |
+| power | number | 传感器电源。 |
+
+## AccelerometerResponse
+
+加速度传感器数据,继承于[Response](#response)。
+
+**系统能力**:以下各项对应的系统能力均为SystemCapability.Sensors.Sensor
+
+
+| 名称 | 参数类型 | 可读 | 可写 | 说明 |
+| ---- | -------- | ---- | ---- | ------------------------------------ |
+| x | number | 是 | 是 | 施加在设备x轴的加速度,单位 : m/s2。 |
+| y | number | 是 | 是 | 施加在设备y轴的加速度,单位 : m/s2。 |
+| z | number | 是 | 是 | 施加在设备z轴的加速度,单位 : m/s2。 |
+
+
+## LinearAccelerometerResponse
+
+线性加速度传感器数据,继承于[Response](#response)。
+
+**系统能力**:以下各项对应的系统能力均为SystemCapability.Sensors.Sensor
+
+
+| 名称 | 参数类型 | 可读 | 可写 | 说明 |
+| ---- | -------- | ---- | ---- | ---------------------------------------- |
+| x | number | 是 | 是 | 施加在设备x轴的线性加速度,单位 : m/s2。 |
+| y | number | 是 | 是 | 施加在设备y轴的线性加速度,单位 : m/s2。 |
+| z | number | 是 | 是 | 施加在设备z轴的线性加速度,单位 : m/s2。 |
+
+
+## AccelerometerUncalibratedResponse
+
+未校准加速度计传感器数据,继承于[Response](#response)。
+
+**系统能力**:以下各项对应的系统能力均为SystemCapability.Sensors.Sensor
+
+
+| 名称 | 参数类型 | 可读 | 可写 | 说明 |
+| ----- | -------- | ---- | ---- | ------------------------------------------------ |
+| x | number | 是 | 是 | 施加在设备x轴未校准的加速度,单位 : m/s2。 |
+| y | number | 是 | 是 | 施加在设备y轴未校准的加速度,单位 : m/s2。 |
+| z | number | 是 | 是 | 施加在设备z轴未校准的加速度,单位 : m/s2。 |
+| biasX | number | 是 | 是 | 施加在设备x轴未校准的加速度偏量,单位 : m/s2。 |
+| biasY | number | 是 | 是 | 施加在设备上y轴未校准的加速度偏量,单位 : m/s2。 |
+| biasZ | number | 是 | 是 | 施加在设备z轴未校准的加速度偏量,单位 : m/s2。 |
+
+
+## GravityResponse
+
+重力传感器数据,继承于[Response](#response)。
+
+**系统能力**:以下各项对应的系统能力均为SystemCapability.Sensors.Sensor
+
+
+| 名称 | 参数类型 | 可读 | 可写 | 说明 |
+| ---- | -------- | ---- | ---- | ---------------------------------------- |
+| x | number | 是 | 是 | 施加在设备x轴的重力加速度,单位 : m/s2。 |
+| y | number | 是 | 是 | 施加在设备y轴的重力加速度,单位 : m/s2。 |
+| z | number | 是 | 是 | 施加在设备z轴的重力加速度,单位 : m/s2。 |
+
+
+## OrientationResponse
+
+方向传感器数据,继承于[Response](#response)。
+
+**系统能力**:以下各项对应的系统能力均为SystemCapability.Sensors.Sensor
+
+
+| 名称 | 参数类型 | 可读 | 可写 | 说明 |
+| ----- | -------- | ---- | ---- | --------------------------------- |
+| alpha | number | 是 | 是 | 设备围绕Z轴的旋转角度,单位:度。 |
+| beta | number | 是 | 是 | 设备围绕X轴的旋转角度,单位:度。 |
+| gamma | number | 是 | 是 | 设备围绕Y轴的旋转角度,单位:度。 |
+
+
+## RotationVectorResponse
+
+旋转矢量传感器数据,继承于[Response](#response)。
+
+**系统能力**:以下各项对应的系统能力均为SystemCapability.Sensors.Sensor
+
+
+| 名称 | 参数类型 | 可读 | 可写 | 说明 |
+| ---- | -------- | ---- | ---- | ----------------- |
+| x | number | 是 | 是 | 旋转矢量x轴分量。 |
+| y | number | 是 | 是 | 旋转矢量y轴分量。 |
+| z | number | 是 | 是 | 旋转矢量z轴分量。 |
+| w | number | 是 | 是 | 标量。 |
+
+
+## GyroscopeResponse
+
+陀螺仪传感器数据,继承于[Response](#response)。
+
+**系统能力**:以下各项对应的系统能力均为SystemCapability.Sensors.Sensor
+
+
+| 名称 | 参数类型 | 可读 | 可写 | 说明 |
+| ---- | -------- | ---- | ---- | -------------------------------- |
+| x | number | 是 | 是 | 设备x轴的旋转角速度,单位rad/s。 |
+| y | number | 是 | 是 | 设备y轴的旋转角速度,单位rad/s。 |
+| z | number | 是 | 是 | 设备z轴的旋转角速度,单位rad/s。 |
+
+
+## GyroscopeUncalibratedResponse
+
+未校准陀螺仪传感器数据,继承于[Response](#response)。
+
+**系统能力**:以下各项对应的系统能力均为SystemCapability.Sensors.Sensor
+
+
+| 名称 | 参数类型 | 可读 | 可写 | 说明 |
+| ----- | -------- | ---- | ---- | ------------------------------------------ |
+| x | number | 是 | 是 | 设备x轴未校准的旋转角速度,单位rad/s。 |
+| y | number | 是 | 是 | 设备y轴未校准的旋转角速度,单位rad/s。 |
+| z | number | 是 | 是 | 设备z轴未校准的旋转角速度,单位rad/s。 |
+| biasX | number | 是 | 是 | 设备x轴未校准的旋转角速度偏量,单位rad/s。 |
+| biasY | number | 是 | 是 | 设备y轴未校准的旋转角速度偏量,单位rad/s。 |
+| biasZ | number | 是 | 是 | 设备z轴未校准的旋转角速度偏量,单位rad/s。 |
+
+
+## SignificantMotionResponse
+
+有效运动传感器数据,继承于[Response](#response)。
+
+**系统能力**:以下各项对应的系统能力均为SystemCapability.Sensors.Sensor
+
+
+| 名称 | 参数类型 | 可读 | 可写 | 说明 |
+| ------ | -------- | ---- | ---- | ------------------------------------------------------------ |
+| scalar | number | 是 | 是 | 表示剧烈运动程度。测量三个物理轴(x、y 和 z)上,设备是否存在大幅度运动;如果取值为1则代表存在大幅度运动,取值为0则代表没有大幅度运动。 |
+
+
+## ProximityResponse
+
+接近光传感器数据,继承于[Response](#response)。
+
+**系统能力**:以下各项对应的系统能力均为SystemCapability.Sensors.Sensor
+
+
+| 名称 | 参数类型 | 可读 | 可写 | 说明 |
+| -------- | -------- | ---- | ---- | ------------------------------------------------------ |
+| distance | number | 是 | 是 | 可见物体与设备显示器的接近程度。0表示接近,1表示远离。 |
+
+
+## LightResponse
+
+环境光传感器数据,继承于[Response](#response)。
+
+**系统能力**:以下各项对应的系统能力均为SystemCapability.Sensors.Sensor
+
+
+| 名称 | 参数类型 | 可读 | 可写 | 说明 |
+| --------- | -------- | ---- | ---- | ---------------------- |
+| intensity | number | 是 | 是 | 光强(单位:勒克斯)。 |
+
+
+## HallResponse
+
+霍尔传感器数据,继承于[Response](#response)。
+
+**系统能力**:以下各项对应的系统能力均为SystemCapability.Sensors.Sensor
+
+
+| 名称 | 参数类型 | 可读 | 可写 | 说明 |
+| ------ | -------- | ---- | ---- | ------------------------------------------------------------ |
+| status | number | 是 | 是 | 显示霍尔状态。测量设备周围是否存在磁力吸引,0表示没有,大于0表示有。 |
+
+
+## MagneticFieldResponse
+
+磁场传感器数据,继承于[Response](#response)。
+
+**系统能力**:以下各项对应的系统能力均为SystemCapability.Sensors.Sensor
+
+
+| 名称 | 参数类型 | 可读 | 可写 | 说明 |
+| ---- | -------- | ---- | ---- | ---------------------------- |
+| x | number | 是 | 是 | x轴环境磁场强度,单位 : μT。 |
+| y | number | 是 | 是 | y轴环境磁场强度,单位 : μT。 |
+| z | number | 是 | 是 | z轴环境磁场强度,单位 : μT。 |
+
+
+## MagneticFieldUncalibratedResponse
+
+未校准磁场传感器数据,继承于[Response](#response)。
+
+**系统能力**:以下各项对应的系统能力均为SystemCapability.Sensors.Sensor
+
+
+| 名称 | 参数类型 | 可读 | 可写 | 说明 |
+| ----- | -------- | ---- | ---- | -------------------------------------- |
+| x | number | 是 | 是 | x轴未校准环境磁场强度,单位 : μT。 |
+| y | number | 是 | 是 | y轴未校准环境磁场强度,单位 : μT。 |
+| z | number | 是 | 是 | z轴未校准环境磁场强度,单位 : μT。 |
+| biasX | number | 是 | 是 | x轴未校准环境磁场强度偏量,单位 : μT。 |
+| biasY | number | 是 | 是 | y轴未校准环境磁场强度偏量,单位 : μT。 |
+| biasZ | number | 是 | 是 | z轴未校准环境磁场强度偏量,单位 : μT。 |
+
+
+## PedometerResponse
+
+计步传感器数据,继承于[Response](#response)。
+
+**系统能力**:以下各项对应的系统能力均为SystemCapability.Sensors.Sensor
+
+
+| 名称 | 参数类型 | 可读 | 可写 | 说明 |
+| ----- | -------- | ---- | ---- | ---------------- |
+| steps | number | 是 | 是 | 用户的行走步数。 |
+
+
+## HumidityResponse
+
+湿度传感器数据,继承于[Response](#response)。
+
+**系统能力**:以下各项对应的系统能力均为SystemCapability.Sensors.Sensor
+
+
+| 名称 | 参数类型 | 可读 | 可写 | 说明 |
+| -------- | -------- | ---- | ---- | --------------------------------------------------------- |
+| humidity | number | 是 | 是 | 湿度值。测量环境的相对湿度,以百分比 (%) 表示。 |
+
+
+## PedometerDetectionResponse
+
+计步检测传感器数据,继承于[Response](#response)。
+
+**系统能力**:以下各项对应的系统能力均为SystemCapability.Sensors.Sensor
+
+
+| 名称 | 参数类型 | 可读 | 可写 | 说明 |
+| ------ | -------- | ---- | ---- | ------------------------------------------------------------ |
+| scalar | number | 是 | 是 | 计步器检测。检测用户的计步动作,如果取值为1则代表用户产生了计步行走的动作,取值为0则代表用户没有发生运动。 |
+
+
+## AmbientTemperatureResponse
+
+温度传感器数据,继承于[Response](#response)。
+
+**系统能力**:以下各项对应的系统能力均为SystemCapability.Sensors.Sensor
+
+
+| 名称 | 参数类型 | 可读 | 可写 | 说明 |
+| ----------- | -------- | ---- | ---- | -------------------------- |
+| temperature | number | 是 | 是 | 环境温度(单位:摄氏度)。 |
+
+
+## BarometerResponse
+
+气压计传感器数据,继承于[Response](#response)。
+
+**系统能力**:以下各项对应的系统能力均为SystemCapability.Sensors.Sensor
+
+
+| 名称 | 参数类型 | 可读 | 可写 | 说明 |
+| -------- | -------- | ---- | ---- | ------------------------ |
+| pressure | number | 是 | 是 | 压力值(单位:帕斯卡)。 |
+
+
+## HeartRateResponse
+
+心率传感器数据,继承于[Response](#response)。
+
+**系统能力**:以下各项对应的系统能力均为SystemCapability.Sensors.Sensor
+
+
+| 名称 | 参数类型 | 可读 | 可写 | 说明 |
+| --------- | -------- | ---- | ---- | --------------------------------------- |
+| heartRate | number | 是 | 是 | 心率值。测量用户的心率数值,单位:bpm。 |
+
+
+## WearDetectionResponse
+
+佩戴检测传感器数据,继承于[Response](#response)。
+
+**系统能力**:以下各项对应的系统能力均为SystemCapability.Sensors.Sensor
+
+
+| 名称 | 参数类型 | 可读 | 可写 | 说明 |
+| ----- | -------- | ---- | ---- | ------------------------------------------------ |
+| value | number | 是 | 是 | 表示设备是否被穿戴(1表示已穿戴,0表示未穿戴)。 |
+
+
+## Options
+
+设置传感器上报频率。
+
+**系统能力**:以下各项对应的系统能力均为SystemCapability.Sensors.Sensor
+
+| 名称 | 参数类型 | 说明 |
+| -------- | -------- | ------------------------------------------- |
+| interval | number | 表示传感器的上报频率,默认值为200000000ns。 |
+
+## RotationMatrixResponse
+
+设置旋转矩阵响应对象。
+
+**系统能力**:以下各项对应的系统能力均为SystemCapability.Sensors.Sensor
+
+| 名称 | 参数类型 | 可读 | 可写 | 说明 |
+| ----------- | ------------------- | ---- | ---- | ---------- |
+| rotation | Array<number> | 是 | 是 | 旋转矩阵。 |
+| inclination | Array<number> | 是 | 是 | 倾斜矩阵。 |
+
+
+## CoordinatesOptions
+
+设置坐标选项对象。
+
+**系统能力**:以下各项对应的系统能力均为SystemCapability.Sensors.Sensor
+
+| 名称 | 参数类型 | 可读 | 可写 | 说明 |
+| ---- | -------- | ---- | ---- | ----------- |
+| x | number | 是 | 是 | x坐标方向。 |
+| y | number | 是 | 是 | y坐标方向。 |
+
+
+## GeomagneticResponse
+
+设置地磁响应对象,继承于[Response](#response)。
+
+**系统能力**:以下各项对应的系统能力均为SystemCapability.Sensors.Sensor
+
+| 名称 | 参数类型 | 可读 | 可写 | 说明 |
+| --------------- | -------- | ---- | ---- | -------------------------------------------------- |
+| x | number | 是 | 是 | 地磁场的北分量。 |
+| y | number | 是 | 是 | 地磁场的东分量。 |
+| z | number | 是 | 是 | 地磁场的垂直分量。 |
+| geomagneticDip | number | 是 | 是 | 地磁倾角,即地球磁场线与水平面的夹角。 |
+| deflectionAngle | number | 是 | 是 | 地磁偏角,即地磁北方向与正北方向在水平面上的角度。 |
+| levelIntensity | number | 是 | 是 | 地磁场的水平强度。 |
+| totalIntensity | number | 是 | 是 | 地磁场的总强度。 |
+
+## LocationOptions
+
+指示地理位置。
+
+**系统能力**:以下各项对应的系统能力均为SystemCapability.Sensors.Sensor
+
+| 名称 | 参数类型 | 可读 | 可写 | 说明 |
+| --------- | -------- | ---- | ---- | ---------- |
+| latitude | number | 是 | 是 | 纬度。 |
+| longitude | number | 是 | 是 | 经度。 |
+| altitude | number | 是 | 是 | 海拔高度。 |
+
+## sensor.on(deprecated)
+
+### ACCELEROMETER(deprecated)
+
+on(type: SensorType.SENSOR_TYPE_ID_ACCELEROMETER, callback: Callback<AccelerometerResponse>,options?: Options): void
+
+监听加速度传感器的数据变化。如果多次调用该接口,仅最后一次调用生效。
+
+从API version 9 开始不再维护,建议使用[sensor.on.ACCELEROMETER](#accelerometer9)代替。
+
+**需要权限**:ohos.permission.ACCELEROMETER
+
+**系统能力**:SystemCapability.Sensors.Sensor
+
+**参数:**
+
+| 参数名 | 类型 | 必填 | 说明 |
+| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
+| type | [SensorType](#sensortype) | 是 | 要订阅的加速度传感器类型为SENSOR_TYPE_ID_ACCELEROMETER。 |
+| callback | Callback<[AccelerometerResponse](#accelerometerresponse)> | 是 | 注册加速度传感器的回调函数,上报的数据类型为AccelerometerResponse。 |
+| options | [Options](#options) | 否 | 可选参数列表,设置上报频率,默认值为200000000ns。 |
+
+**示例:**
+
+ ```js
+ sensor.on(sensor.SensorType.SENSOR_TYPE_ID_ACCELEROMETER,function(data){
+ console.info('X-coordinate component: ' + data.x);
+ console.info('Y-coordinate component: ' + data.y);
+ console.info('Z-coordinate component: ' + data.z);
+ },
+ {interval: 10000000}
+ );
+ ```
+
+### LINEAR_ACCELERATION(deprecated)
+
+on(type: SensorType.SENSOR_TYPE_ID_LINEAR_ACCELERATION,callback:Callback<LinearAccelerometerResponse>, options?: Options): void
+
+监听线性加速度传感器的数据变化。如果多次调用该接口,仅最后一次调用生效。
+
+从API version 9 开始不再维护,建议使用[sensor.on.LINEAR_ACCELEROMETER](#linear_accelerometer9)代替。
+
+**需要权限**:ohos.permission.ACCELEROMETER
+
+**系统能力**:SystemCapability.Sensors.Sensor
+
+**参数:**
+
+| 参数名 | 类型 | 必填 | 说明 |
+| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
+| type | [SensorType](#sensortype) | 是 | 要订阅的线性加速度传感器类型为SENSOR_TYPE_ID_LINEAR_ACCELERATION。 |
+| callback | Callback<[LinearAccelerometerResponse](#linearaccelerometerresponse)> | 是 | 注册线性加速度传感器的回调函数,上报的数据类型为LinearAccelerometerResponse。 |
+| options | [Options](#options) | 否 | 可选参数列表,设置上报频率,默认值为200000000ns。 |
+
+### LINEAR_ACCELEROMETER9+
+
+on(type: SensorType.SENSOR_TYPE_ID_LINEAR_ACCELERATION,callback:Callback<LinearAccelerometerResponse>,
+ options?: Options): void
+
+监听线性加速度传感器的数据变化。如果多次调用该接口,仅最后一次调用生效。
+
+**需要权限**:ohos.permission.ACCELEROMETER
+
+**系统能力**:SystemCapability.Sensors.Sensor
+
+**参数:**
+| 参数名 | 类型 | 必填 | 说明 |
+| -------- | ------------------------------------------------------------ | ---- | ------------------------------------------------------------ |
+| type | [SensorType](#sensortype) | 是 | 要订阅的线性加速度传感器类型为SENSOR_TYPE_ID_LINEAR_ACCELEROMETER。 |
+| callback | Callback<[LinearAccelerometerResponse](#linearaccelerometerresponse)> | 是 | 注册线性加速度传感器的回调函数,上报的数据类型为LinearAccelerometerResponse。 |
+| options | [Options](#options) | 否 | 可选参数列表,设置上报频率,默认值为200000000ns。 |
+
+**示例:**
+
+ ```js
+ sensor.on(sensor.SensorType.SENSOR_TYPE_ID_LINEAR_ACCELEROMETER,function(data){
+ console.info('X-coordinate component: ' + data.x);
+ console.info('Y-coordinate component: ' + data.y);
+ console.info('Z-coordinate component: ' + data.z);
+ },
+ {interval: 10000000}
+ );
+ ```
+
+### ACCELEROMETER_UNCALIBRATED(deprecated)
+
+on(type: SensorType.SENSOR_TYPE_ID_ACCELEROMETER_UNCALIBRATED,callback: Callback<AccelerometerUncalibratedResponse>, options?: Options): void
+
+监听未校准加速度计传感器的数据变化。如果多次调用该接口,仅最后一次调用生效。
+
+从API version 9 开始不再维护,建议使用[sensor.on.ACCELEROMETER_UNCALIBRATED](#accelerometer_uncalibrated9)代替。
+
+**需要权限**:ohos.permission.ACCELEROMETER
+
+**系统能力**:SystemCapability.Sensors.Sensor
+
+**参数:**
+
+| 参数名 | 类型 | 必填 | 说明 |
+| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
+| type | [SensorType](#sensortype) | 是 | 要订阅的未校准加速度计传感器类型为SENSOR_TYPE_ID_ACCELEROMETER_UNCALIBRATED。 |
+| callback | Callback<[AccelerometerUncalibratedResponse](#accelerometeruncalibratedresponse)> | 是 | 注册未校准加速度计传感器的回调函数,上报的数据类型为AccelerometerUncalibratedResponse。 |
+| options | [Options](#options) | 否 | 可选参数列表,设置上报频率,默认值为200000000ns。 |
+
+**示例:**
+ ```js
+ sensor.on(sensor.SensorType.SENSOR_TYPE_ID_ACCELEROMETER_UNCALIBRATED,function(data){
+ console.info('X-coordinate component: ' + data.x);
+ console.info('Y-coordinate component: ' + data.y);
+ console.info('Z-coordinate component: ' + data.z);
+ console.info('X-coordinate bias: ' + data.biasX);
+ console.info('Y-coordinate bias: ' + data.biasY);
+ console.info('Z-coordinate bias: ' + data.biasZ);
+ },
+ {interval: 10000000}
+ );
+ ```
+
+### GRAVITY(deprecated)
+
+on(type: SensorType.SENSOR_TYPE_ID_GRAVITY, callback: Callback<GravityResponse>,options?: Options): void
+
+监听重力传感器的数据变化。如果多次调用该接口,仅最后一次调用生效。
+
+从API version 9 开始不再维护,建议使用[sensor.on.GRAVITY](#gravity9)代替。
+
+**系统能力**:SystemCapability.Sensors.Sensor
+
+**参数:**
+
+| 参数名 | 类型 | 必填 | 说明 |
+| -------- | ---------------------------------------- | ---- | ------------------------------------- |
+| type | [SensorType](#sensortype) | 是 | 要订阅的重力传感器类型为SENSOR_TYPE_ID_GRAVITY。 |
+| callback | Callback<[GravityResponse](#gravityresponse)> | 是 | 注册重力传感器的回调函数,上报的数据类型为GravityResponse。 |
+| options | [Options](#options) | 否 | 可选参数列表,设置上报频率,默认值为200000000ns。 |
+
+**示例:**
+ ```js
+ sensor.on(sensor.SensorType.SENSOR_TYPE_ID_GRAVITY,function(data){
+ console.info('X-coordinate component: ' + data.x);
+ console.info('Y-coordinate component: ' + data.y);
+ console.info('Z-coordinate component: ' + data.z);
+ },
+ {interval: 10000000}
+ );
+ ```
+
+### GYROSCOPE(deprecated)
+
+on(type: SensorType.SENSOR_TYPE_ID_GYROSCOPE, callback: Callback<GyroscopeResponse>, options?: Options): void
+
+监听陀螺仪传感器的数据变化。如果多次调用该接口,仅最后一次调用生效。
+
+从API version 9 开始不再维护,建议使用[sensor.on.GYROSCOPE](#gyroscope9)代替。
+
+**需要权限**:ohos.permission.GYROSCOPE
+
+**系统能力**:SystemCapability.Sensors.Sensor
+
+**参数:**
+
+| 参数名 | 类型 | 必填 | 说明 |
+| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
+| type | [SensorType](#sensortype) | 是 | 要订阅的陀螺仪传感器类型为SENSOR_TYPE_ID_GYROSCOPE。 |
+| callback | Callback<[GyroscopeResponse](#gyroscoperesponse)> | 是 | 注册陀螺仪传感器的回调函数,上报的数据类型为GyroscopeResponse。 |
+| options | [Options](#options) | 否 | 可选参数列表,设置上报频率,默认值为200000000ns。 |
+
+**示例:**
+ ```js
+ sensor.on(sensor.SensorType.SENSOR_TYPE_ID_GYROSCOPE,function(data){
+ console.info('X-coordinate component: ' + data.x);
+ console.info('Y-coordinate component: ' + data.y);
+ console.info('Z-coordinate component: ' + data.z);
+ },
+ {interval: 10000000}
+ );
+ ```
+
+### GYROSCOPE_UNCALIBRATED(deprecated)
+
+on(type: SensorType.SENSOR_TYPE_ID_GYROSCOPE_UNCALIBRATED,callback:Callback<GyroscopeUncalibratedResponse>, options?: Options): void
+
+监听未校准陀螺仪传感器的数据变化。如果多次调用该接口,仅最后一次调用生效。
+
+从API version 9 开始不再维护,建议使用[sensor.on.GYROSCOPE_UNCALIBRATED](#gyroscope_uncalibrated9)代替。
+
+**需要权限**:ohos.permission.GYROSCOPE
+
+**系统能力**:SystemCapability.Sensors.Sensor
+
+**参数:**
+
+| 参数名 | 类型 | 必填 | 说明 |
+| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
+| type | [SensorType](#sensortype) | 是 | 要订阅的未校准陀螺仪传感器类型为SENSOR_TYPE_ID_GYROSCOPE_UNCALIBRATED。 |
+| callback | Callback<[GyroscopeUncalibratedResponse](#gyroscopeuncalibratedresponse)> | 是 | 注册未校准陀螺仪传感器的回调函数,上报的数据类型为GyroscopeUncalibratedResponse。 |
+| options | [Options](#options) | 否 | 可选参数列表,设置上报频率。 |
+
+**示例:**
+ ```js
+ sensor.on(sensor.SensorType.SENSOR_TYPE_ID_GYROSCOPE_UNCALIBRATED,function(data){
+ console.info('X-coordinate component: ' + data.x);
+ console.info('Y-coordinate component: ' + data.y);
+ console.info('Z-coordinate component: ' + data.z);
+ console.info('X-coordinate bias: ' + data.biasX);
+ console.info('Y-coordinate bias: ' + data.biasY);
+ console.info('Z-coordinate bias: ' + data.biasZ);
+ },
+ {interval: 10000000}
+ );
+ ```
+
+### SIGNIFICANT_MOTION(deprecated)
+
+on(type: SensorType.SENSOR_TYPE_ID_SIGNIFICANT_MOTION, callback: Callback<SignificantMotionResponse>, options?: Options): void
+
+监听大幅动作传感器数据变化。如果多次调用该接口,仅最后一次调用生效。
+
+从API version 9 开始不再维护,建议使用[sensor.on.SIGNIFICANT_MOTION](#significant_motion9) 代替。
+
+**系统能力**:SystemCapability.Sensors.Sensor
+
+**参数:**
+
+| 参数名 | 类型 | 必填 | 说明 |
+| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
+| type | [SensorType](#sensortype) | 是 | 要订阅的大幅动作传感器类型为SENSOR_TYPE_ID_SIGNIFICANT_MOTION。 |
+| callback | Callback<[SignificantMotionResponse](#significantmotionresponse)> | 是 | 注册有效运动传感器的回调函数,上报的数据类型为SignificantMotionResponse。 |
+| options | [Options](#options) | 否 | 可选参数列表,设置上报频率,默认值为200000000ns。 |
+
+**示例:**
+ ```js
+ sensor.on(sensor.SensorType.SENSOR_TYPE_ID_SIGNIFICANT_MOTION,function(data){
+ console.info('Scalar data: ' + data.scalar);
+ },
+ {interval: 10000000}
+ );
+ ```
+
+### PEDOMETER_DETECTION(deprecated)
+
+on(type: SensorType.SENSOR_TYPE_ID_PEDOMETER_DETECTION, callback: Callback<PedometerDetectionResponse>, options?: Options): void
+
+监听计步检测传感器的数据变化。如果多次调用该接口,仅最后一次调用生效。
+
+从API version 9 开始不再维护,建议使用[sensor.on.PEDOMETER_DETECTION](#pedometer_detection9)代替。
+
+**需要权限**:ohos.permission.ACTIVITY_MOTION
+
+**系统能力**:SystemCapability.Sensors.Sensor
+
+**参数:**
+
+| 参数名 | 类型 | 必填 | 说明 |
+| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
+| type | [SensorType](#sensortype) | 是 | 要订阅的计步检测传感器类型为SENSOR_TYPE_ID_PEDOMETER_DETECTION。 |
+| callback | Callback<[PedometerDetectionResponse](#pedometerdetectionresponse)> | 是 | 注册计步检测传感器的回调函数,上报的数据类型为PedometerDetectionResponse。 |
+| options | [Options](#options) | 否 | 可选参数列表,设置上报频率,默认值为200000000ns。 |
+
+**示例:**
+ ```js
+ sensor.on(sensor.SensorType.SENSOR_TYPE_ID_PEDOMETER_DETECTION,function(data){
+ console.info('Scalar data: ' + data.scalar);
+ },
+ {interval: 10000000}
+ );
+ ```
+
+### PEDOMETER(deprecated)
+
+on(type: SensorType.SENSOR_TYPE_ID_PEDOMETER, callback: Callback<PedometerResponse>, options?: Options): void
+
+监听计步传感器的数据变化。如果多次调用该接口,仅最后一次调用生效。
+
+从API version 9 开始不再维护,建议使用[sensor.on.PEDOMETER](#pedometer9)代替。
+
+**需要权限**:ohos.permission.ACTIVITY_MOTION
+
+**系统能力**:SystemCapability.Sensors.Sensor
+
+**参数:**
+
+| 参数名 | 类型 | 必填 | 说明 |
+| -------- | ---------------------------------------- | ---- | --------------------------------------- |
+| type | [SensorType](#sensortype) | 是 | 要订阅的计步传感器类型为SENSOR_TYPE_ID_PEDOMETER。 |
+| callback | Callback<[PedometerResponse](#pedometerresponse)> | 是 | 注册计步传感器的回调函数,上报的数据类型为PedometerResponse。 |
+| options | [Options](#options) | 否 | 可选参数列表,设置上报频率,默认值为200000000ns。 |
+
+**示例:**
+ ```js
+ sensor.on(sensor.SensorType.SENSOR_TYPE_ID_PEDOMETER,function(data){
+ console.info('Steps: ' + data.steps);
+ },
+ {interval: 10000000}
+ );
+ ```
+
+### AMBIENT_TEMPERATURE(deprecated)
+
+on(type: SensorType.SENSOR_TYPE_ID_AMBIENT_TEMPERATURE,callback:Callback<AmbientTemperatureResponse>, options?: Options): void
+
+监听环境温度传感器的数据变化。如果多次调用该接口,仅最后一次调用生效。
+
+从API version 9 开始不再维护,建议使用[sensor.on.AMBIENT_TEMPERATURE](#ambient_temperature9)代替。
+
+**系统能力**:SystemCapability.Sensors.Sensor
+
+**参数:**
+
+| 参数名 | 类型 | 必填 | 说明 |
+| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
+| type | [SensorType](#sensortype) | 是 | 要订阅的环境温度传感器类型为SENSOR_TYPE_ID_AMBIENT_TEMPERATURE。 |
+| callback | Callback<[AmbientTemperatureResponse](#ambienttemperatureresponse)> | 是 | 注册环境温度传感器的回调函数,上报的数据类型为AmbientTemperatureResponse。 |
+| options | [Options](#options) | 否 | 可选参数列表,设置上报频率,默认值为200000000ns。 |
+
+**示例:**
+
+ ```js
+ sensor.on(sensor.SensorType.SENSOR_TYPE_ID_AMBIENT_TEMPERATURE,function(data){
+ console.info('Temperature: ' + data.temperature);
+ },
+ {interval: 10000000}
+ );
+ ```
+
+### MAGNETIC_FIELD(deprecated)
+
+on(type: SensorType.SENSOR_TYPE_ID_MAGNETIC_FIELD, callback: Callback<MagneticFieldResponse>,options?: Options): void
+
+监听磁场传感器的数据变化。如果多次调用该接口,仅最后一次调用生效。
+
+从API version 9 开始不再维护,建议使用[sensor.on.MAGNETIC_FIELD](#magnetic_field9)代替。
+
+**系统能力**:SystemCapability.Sensors.Sensor
+
+**参数:**
+
+| 参数名 | 类型 | 必填 | 说明 |
+| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
+| type | [SensorType](#sensortype) | 是 | 要订阅的磁场传感器类型为SENSOR_TYPE_ID_MAGNETIC_FIELD。 |
+| callback | Callback<[MagneticFieldResponse](#magneticfieldresponse)> | 是 | 注册磁场传感器的回调函数,上报的数据类型为MagneticFieldResponse。 |
+| options | [Options](#options) | 否 | 可选参数列表,设置上报频率,默认值为200000000ns。 |
+
+**示例:**
+
+ ```js
+ sensor.on(sensor.SensorType.SENSOR_TYPE_ID_MAGNETIC_FIELD,function(data){
+ console.info('X-coordinate component: ' + data.x);
+ console.info('Y-coordinate component: ' + data.y);
+ console.info('Z-coordinate component: ' + data.z);
+ },
+ {interval: 10000000}
+ );
+ ```
+
+### MAGNETIC_FIELD_UNCALIBRATED(deprecated)
+
+on(type: SensorType.SENSOR_TYPE_ID_MAGNETIC_FIELD_UNCALIBRATED,callback: Callback<MagneticFieldUncalibratedResponse>, options?: Options): void
+
+监听未校准磁场传感器的数据变化。如果多次调用该接口,仅最后一次调用生效。
+
+从API version 9 开始不再维护,建议使用[sensor.on.MAGNETIC_FIELD_UNCALIBRATED](#magnetic_field_uncalibrated9)代替。
+
+**系统能力**:SystemCapability.Sensors.Sensor
+
+**参数:**
+
+| 参数名 | 类型 | 必填 | 说明 |
+| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
+| type | [SensorType](#sensortype) | 是 | 要订阅的未校准磁场传感器类型为SENSOR_TYPE_ID_MAGNETIC_FIELD_UNCALIBRATED。 |
+| callback | Callback<[MagneticFieldUncalibratedResponse](#magneticfielduncalibratedresponse)> | 是 | 注册未校准磁场传感器的回调函数,上报的数据类型为MagneticFieldUncalibratedResponse。 |
+| options | [Options](#options) | 否 | 可选参数列表,设置上报频率,默认值为200000000ns。 |
+
+**示例:**
+ ```js
+ sensor.on(sensor.SensorType.SENSOR_TYPE_ID_MAGNETIC_FIELD_UNCALIBRATED,function(data){
+ console.info('X-coordinate component: ' + data.x);
+ console.info('Y-coordinate component: ' + data.y);
+ console.info('Z-coordinate component: ' + data.z);
+ console.info('X-coordinate bias: ' + data.biasX);
+ console.info('Y-coordinate bias: ' + data.biasY);
+ console.info('Z-coordinate bias: ' + data.biasZ);
+ },
+ {interval: 10000000}
+ );
+ ```
+
+### PROXIMITY(deprecated)
+
+on(type: SensorType.SENSOR_TYPE_ID_PROXIMITY, callback: Callback<ProximityResponse>,options?: Options): void
+
+监听接近光传感器的数据变化。如果多次调用该接口,仅最后一次调用生效。
+
+从API version 9 开始不再维护,建议使用[sensor.on.PROXIMITY](#proximity9)代替。
+
+**系统能力**:SystemCapability.Sensors.Sensor
+
+**参数:**
+
+| 参数名 | 类型 | 必填 | 说明 |
+| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
+| type | [SensorType](#sensortype) | 是 | 要订阅的接近光传感器类型为SENSOR_TYPE_ID_PROXIMITY。 |
+| callback | Callback<[ProximityResponse](#proximityresponse)> | 是 | 注册接近光传感器的回调函数,上报的数据类型为ProximityResponse。 |
+| options | [Options](#options) | 否 | 可选参数列表,设置上报频率,默认值为200000000ns。 |
+
+**示例:**
+ ```js
+ sensor.on(sensor.SensorType.SENSOR_TYPE_ID_PROXIMITY,function(data){
+ console.info('Distance: ' + data.distance);
+ },
+ {interval: 10000000}
+ );
+ ```
+
+### HUMIDITY(deprecated)
+
+on(type: SensorType.SENSOR_TYPE_ID_HUMIDITY, callback: Callback<HumidityResponse>,options?: Options): void
+
+监听湿度传感器的数据变化。如果多次调用该接口,仅最后一次调用生效。
+
+从API version 9 开始不再维护,建议使用[sensor.on.HUMIDITY](#humidity9)代替。
+
+**系统能力**:SystemCapability.Sensors.Sensor
+
+**参数:**
+
+| 参数名 | 类型 | 必填 | 说明 |
+| -------- | ---------------------------------------- | ---- | -------------------------------------- |
+| type | [SensorType](#sensortype) | 是 | 要订阅的湿度传感器类型为SENSOR_TYPE_ID_HUMIDITY。 |
+| callback | Callback<[HumidityResponse](#humidityresponse)> | 是 | 注册湿度传感器的回调函数,上报的数据类型为HumidityResponse。 |
+| options | [Options](#options) | 否 | 可选参数列表,设置上报频率,默认值为200000000ns。 |
+
+**示例:**
+
+ ```js
+ sensor.on(sensor.SensorType.SENSOR_TYPE_ID_HUMIDITY,function(data){
+ console.info('Humidity: ' + data.humidity);
+ },
+ {interval: 10000000}
+ );
+ ```
+
+### BAROMETER(deprecated)
+
+on(type: SensorType.SENSOR_TYPE_ID_BAROMETER, callback: Callback<BarometerResponse>,options?: Options): void
+
+监听气压计传感器的数据变化。如果多次调用该接口,仅最后一次调用生效。
+
+从API version 9 开始不再维护,建议使用[sensor.on.BAROMETER](#barometer9)代替。
+
+**系统能力**:SystemCapability.Sensors.Sensor
+
+**参数:**
+
+| 参数名 | 类型 | 必填 | 说明 |
+| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
+| type | [SensorType](#sensortype) | 是 | 要订阅的气压计传感器类型为SENSOR_TYPE_ID_BAROMETER。 |
+| callback | Callback<[BarometerResponse](#barometerresponse)> | 是 | 注册气压计传感器的回调函数,上报的数据类型为BarometerResponse。 |
+| options | [Options](#options) | 否 | 可选参数列表,设置上报频率,默认值为200000000ns。 |
+
+**示例:**
+
+ ```js
+ sensor.on(sensor.SensorType.SENSOR_TYPE_ID_BAROMETER,function(data){
+ console.info('Atmospheric pressure: ' + data.pressure);
+ },
+ {interval: 10000000}
+ );
+ ```
+
+### HALL(deprecated)
+
+on(type: SensorType.SENSOR_TYPE_ID_HALL, callback: Callback<HallResponse>, options?: Options): void
+
+监听霍尔传感器的数据变化。如果多次调用该接口,仅最后一次调用生效。
+
+从API version 9 开始不再维护,建议使用[sensor.on.HALL](#hall9)代替。
+
+**系统能力**:SystemCapability.Sensors.Sensor
+
+**参数:**
+
+| 参数名 | 类型 | 必填 | 说明 |
+| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
+| type | [SensorType](#sensortype) | 是 | 要订阅的霍尔传感器类型为SENSOR_TYPE_ID_HALL。 |
+| callback | Callback<[HallResponse](#hallresponse)> | 是 | 注册霍尔传感器的回调函数,上报的数据类型为 HallResponse。 |
+| options | [Options](#options) | 否 | 可选参数列表,设置上报频率,默认值为200000000ns。 |
+
+**示例:**
+ ```js
+ sensor.on(sensor.SensorType.SENSOR_TYPE_ID_HALL,function(data){
+ console.info('Status: ' + data.status);
+ },
+ {interval: 10000000}
+ );
+ ```
+
+### AMBIENT_LIGHT(deprecated)
+
+on(type: SensorType.SENSOR_TYPE_ID_AMBIENT_LIGHT, callback: Callback<LightResponse>, options?: Options): void
+
+监听环境光传感器的数据变化。如果多次调用该接口,仅最后一次调用生效。
+
+从API version 9 开始不再维护,建议使用[sensor.on.AMBIENT_LIGHT](#ambient_light9)代替。
+
+**系统能力**:SystemCapability.Sensors.Sensor
+
+**参数:**
+
+| 参数名 | 类型 | 必填 | 说明 |
+| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
+| type | [SensorType](#sensortype) | 是 | 要订阅的环境光传感器类型为SENSOR_TYPE_ID_AMBIENT_LIGHT。 |
+| callback | Callback<[LightResponse](#lightresponse)> | 是 | 注册环境光传感器的回调函数,上报的数据类型为LightResponse。 |
+| options | [Options](#options) | 否 | 可选参数列表,设置上报频率,默认值为200000000ns。 |
+
+**示例:**
+
+ ```js
+ sensor.on(sensor.SensorType.SENSOR_TYPE_ID_AMBIENT_LIGHT,function(data){
+ console.info(' Illumination: ' + data.intensity);
+ },
+ {interval: 10000000}
+ );
+ ```
+
+### ORIENTATION(deprecated)
+
+on(type: SensorType.SENSOR_TYPE_ID_ORIENTATION, callback: Callback<OrientationResponse>, options?: Options): void
+
+监听方向传感器的数据变化。如果多次调用该接口,仅最后一次调用生效。
+
+从API version 9 开始不再维护,建议使用[sensor.on.ORIENTATION](#orientation9)代替。
+
+**系统能力**:SystemCapability.Sensors.Sensor
+
+**参数:**
+
+| 参数名 | 类型 | 必填 | 说明 |
+| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
+| type | [SensorType](#sensortype) | 是 | 要订阅的方向传感器类型为SENSOR_TYPE_ID_ORIENTATION |
+| callback | Callback<[OrientationResponse](#orientationresponse)> | 是 | 注册方向传感器的回调函数,上报的数据类型为OrientationResponse。 |
+| options | [Options](#options) | 否 | 可选参数列表,设置上报频率,默认值为200000000ns。 |
+
+**示例:**
+ ```js
+ sensor.on(sensor.SensorType.SENSOR_TYPE_ID_ORIENTATION,function(data){
+ console.info('The device rotates at an angle around the X axis: ' + data.beta);
+ console.info('The device rotates at an angle around the Y axis: ' + data.gamma);
+ console.info('The device rotates at an angle around the Z axis: ' + data.alpha);
+ },
+ {interval: 10000000}
+ );
+ ```
+
+### HEART_RATE(deprecated)
+
+on(type: SensorType.SENSOR_TYPE_ID_HEART_RATE, callback: Callback<HeartRateResponse>, options?: Options): void
+
+监听心率传感器数据变化一次。
+
+从API version 9 开始不再维护,建议使用[sensor.on.HEART_BEAT_RATE](#heart_beat_rate9)代替。
+
+**需要权限**:ohos.permission.HEALTH_DATA
+
+**系统能力**:SystemCapability.Sensors.Sensor
+
+**参数:**
+
+| 参数名 | 类型 | 必填 | 说明 |
+| -------- | ------------------------------------------------------- | ---- | ------------------------------------------------------------ |
+| type | [SensorType](#sensortype) | 是 | 要订阅的心率传感器类型为SENSOR_TYPE_ID_HEART_RATE。 |
+| callback | Callback<[HeartRateResponse](#heartrateresponse)> | 是 | 注册一次心率传感器的回调函数,上报的数据类型为HeartRateResponse。 |
+
+### HEART_BEAT_RATE9+
+
+on(type: SensorType.SENSOR_TYPE_ID_HEART_RATE, callback: Callback<HeartRateResponse>,
+ options?: Options): void
+
+监听心率传感器数据变化一次。
+
+**需要权限**:ohos.permission.HEALTH_DATA
+
+**系统能力**:SystemCapability.Sensors.Sensor
+
+**参数:**
+
+| 参数名 | 类型 | 必填 | 说明 |
+| -------- | ------------------------------------------------------- | ---- | ------------------------------------------------------------ |
+| type | [SensorType](#sensortype) | 是 | 要订阅的心率传感器类型为SENSOR_TYPE_ID_HEART_BEAT_RATE。 |
+| callback | Callback<[HeartRateResponse](#heartrateresponse)> | 是 | 注册一次心率传感器的回调函数,上报的数据类型为HeartRateResponse。 |
+
+**示例:**
+
+```js
+sensor.on(sensor.SensorType.SENSOR_TYPE_ID_HEART_BEAT_RATE,function(data){
+ console.info("Heart rate: " + data.heartRate);
+},
+ {interval: 10000000}
+);
+```
+
+### ROTATION_VECTOR(deprecated)
+
+on(type: SensorType.SENSOR_TYPE_ID_ROTATION_VECTOR,callback: Callback<RotationVectorResponse>,options?: Options): void
+
+监听旋转矢量传感器的数据变化。如果多次调用该接口,仅最后一次调用生效。
+
+从API version 9 开始不再维护,建议使用[sensor.on.ROTATION_VECTOR](#rotation_vector9)代替。
+
+**系统能力**:SystemCapability.Sensors.Sensor
+
+**参数:**
+
+| 参数名 | 类型 | 必填 | 说明 |
+| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
+| type | [SensorType](#sensortype) | 是 | 要订阅的旋转矢量传感器类型为SENSOR_TYPE_ID_ROTATION_VECTOR。 |
+| callback | Callback<[RotationVectorResponse](#rotationvectorresponse)> | 是 | 注册旋转矢量传感器的回调函数,上报的数据类型为RotationVectorResponse。 |
+| options | [Options](#options) | 否 | 可选参数列表,设置上报频率,默认值为200000000ns。 |
+
+**示例:**
+ ```js
+ sensor.on(sensor.SensorType.SENSOR_TYPE_ID_ROTATION_VECTOR,function(data){
+ console.info('X-coordinate component: ' + data.x);
+ console.info('Y-coordinate component: ' + data.y);
+ console.info('Z-coordinate component: ' + data.z);
+ console.info('Scalar quantity: ' + data.w);
+ },
+ {interval: 10000000}
+ );
+ ```
+
+### WEAR_DETECTION(deprecated)
+
+on(type: SensorType.SENSOR_TYPE_ID_WEAR_DETECTION, callback: Callback<WearDetectionResponse>,options?: Options): void
+
+监听佩戴检测传感器的数据变化。如果多次调用该接口,仅最后一次调用生效。
+
+从API version 9 开始不再维护,建议使用[sensor.on.WEAR_DETECTION](#wear_detection9)代替。
+
+**系统能力**:SystemCapability.Sensors.Sensor
+
+**参数:**
+
+| 参数名 | 类型 | 必填 | 说明 |
+| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
+| type | [SensorType](#sensortype) | 是 | 要订阅的佩戴检测传感器类型为SENSOR_TYPE_ID_WEAR_DETECTION。 |
+| callback | Callback<[WearDetectionResponse](#weardetectionresponse)> | 是 | 注册佩戴检测传感器的回调函数,上报的数据类型为WearDetectionResponse。 |
+| options | [Options](#options) | 否 | 可选参数列表,设置上报频率,默认值为200000000ns。 |
+
+**示例:**
+ ```js
+ sensor.on(sensor.SensorType.SENSOR_TYPE_ID_WEAR_DETECTION,function(data){
+ console.info('Wear status: ' + data.value);
+ },
+ {interval: 10000000}
+ );
+ ```
+
+## sensor.once(deprecated)
+
+### ACCELEROMETER(deprecated)
+
+once(type: SensorType.SENSOR_TYPE_ID_ACCELEROMETER, callback: Callback<AccelerometerResponse>): void
+
+监听加速度传感器的数据变化一次。
+
+从API version 9 开始不再维护,建议使用[sensor.once.ACCELEROMETER](#accelerometer9-1)代替。
+
+**需要权限**:ohos.permission.ACCELEROMETER
+
+**系统能力**:SystemCapability.Sensors.Sensor
+
+**参数:**
+
+| 参数名 | 类型 | 必填 | 说明 |
+| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
+| type | [SensorType](#sensortype) | 是 | 加速度传感器类型为SENSOR_TYPE_ID_ACCELEROMETER。 |
+| callback | Callback<[AccelerometerResponse](#accelerometerresponse)> | 是 | 注册一次加速度传感器的回调函数,上报的数据类型为AccelerometerResponse。 |
+
+**示例:**
+ ```js
+ sensor.once(sensor.SensorType.SENSOR_TYPE_ID_ACCELEROMETER,function(data){
+ console.info('X-coordinate component: ' + data.x);
+ console.info('Y-coordinate component: ' + data.y);
+ console.info('Z-coordinate component: ' + data.z);
+ }
+ );
+ ```
+
+### LINEAR_ACCELERATION(deprecated)
+
+once(type: SensorType.SENSOR_TYPE_ID_LINEAR_ACCELERATION,callback:Callback<LinearAccelerometerResponse>): void
+
+监听线性加速度传感器数据变化一次。
+
+从API version 9 开始不再维护,建议使用[sensor.once.LINEAR_ACCELEROMETER](#linear_accelerometer9)代替。
+
+**需要权限**:ohos.permission.ACCELERATION
+
+**系统能力**:SystemCapability.Sensors.Sensor
+
+**参数:**
+
+| 参数名 | 类型 | 必填 | 说明 |
+| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
+| type | [SensorType](#sensortype) | 是 | 线性加速度传感器类型为SENSOR_TYPE_ID_LINEAR_ACCELERATION。 |
+| callback | Callback<[LinearAccelerometerResponse](#linearaccelerometerresponse)> | 是 | 注册一次线性加速度传感器的回调函数,上报的数据类型为LinearAccelerometerResponse。 |
+
+### LINEAR_ACCELEROMETER9+
+
+once(type: SensorType.SENSOR_TYPE_ID_LINEAR_ACCELERATION,callback:Callback<LinearAccelerometerResponse>): void
+
+订阅一次线性加速度传感器数据。
+
+**需要权限**:ohos.permission.ACCELERATION
+
+**系统能力**:SystemCapability.Sensors.Sensor
+
+**参数:**
+| 参数名 | 类型 | 必填 | 说明 |
+| -------- | ------------------------------------------------------------ | ---- | ------------------------------------------------------------ |
+| type | [SensorType](#sensortype) | 是 | 线性加速度传感器类型为SENSOR_TYPE_ID_LINEAR_ACCELEROMETER。 |
+| callback | Callback<[LinearAccelerometerResponse](#linearaccelerometerresponse)> | 是 | 注册一次线性加速度传感器的回调函数,上报的数据类型为LinearAccelerometerResponse。 |
+
+**示例:**
+
+ ```js
+ sensor.once(sensor.SensorType.SENSOR_TYPE_ID_LINEAR_ACCELEROMETER, function(data) {
+ console.info('X-coordinate component: ' + data.x);
+ console.info('Y-coordinate component: ' + data.y);
+ console.info('Z-coordinate component: ' + data.z);
+ }
+ );
+ ```
+
+### ACCELEROMETER_UNCALIBRATED(deprecated)
+
+once(type: SensorType.SENSOR_TYPE_ID_ACCELEROMETER_UNCALIBRATED,callback: Callback<AccelerometerUncalibratedResponse>): void
+
+监听未校准加速度传感器的数据变化一次。
+
+从API version 9 开始不再维护,建议使用[sensor.once.ACCELEROMETER_UNCALIBRATED](#accelerometer_uncalibrated9-1)代替。
+
+**需要权限**:ohos.permission.ACCELEROMETER
+
+**系统能力**:SystemCapability.Sensors.Sensor
+
+**参数:**
+
+| 参数名 | 类型 | 必填 | 说明 |
+| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
+| type | [SensorType](#sensortype) | 是 | 未校准加速度传感器类型为SENSOR_TYPE_ID_ACCELEROMETER_UNCALIBRATED。 |
+| callback | Callback<[AccelerometerUncalibratedResponse](#accelerometeruncalibratedresponse)> | 是 | 注册一次未校准加速度传感器的回调函数,上报的数据类型为AccelerometerUncalibratedResponse。 |
+
+**示例:**
+ ```
+ sensor.once(sensor.SensorType.SENSOR_TYPE_ID_ACCELEROMETER_UNCALIBRATED, function(data) {
+ console.info('X-coordinate component: ' + data.x);
+ console.info('Y-coordinate component: ' + data.y);
+ console.info('Z-coordinate component: ' + data.z);
+ console.info('X-coordinate bias: ' + data.biasX);
+ console.info('Y-coordinate bias: ' + data.biasY);
+ console.info('Z-coordinate bias: ' + data.biasZ);
+ }
+ );
+ ```
+
+### GRAVITY(deprecated)
+
+once(type: SensorType.SENSOR_TYPE_ID_GRAVITY, callback: Callback<GravityResponse>): void
+
+监听重力传感器的数据变化一次。
+
+从API version 9 开始不再维护,建议使用[sensor.once.GRAVITY](#gravity9-1)代替。
+
+**系统能力**:SystemCapability.Sensors.Sensor
+
+**参数:**
+
+| 参数名 | 类型 | 必填 | 说明 |
+| -------- | ---------------------------------------- | ---- | --------------------------------------- |
+| type | [SensorType](#sensortype) | 是 | 重力传感器类型为SENSOR_TYPE_ID_GRAVITY。 |
+| callback | Callback<[GravityResponse](#gravityresponse)> | 是 | 注册一次重力传感器的回调函数,上报的数据类型为GravityResponse。 |
+
+**示例:**
+ ```js
+ sensor.once(sensor.SensorType.SENSOR_TYPE_ID_GRAVITY, function(data) {
+ console.info('X-coordinate component: ' + data.x);
+ console.info('Y-coordinate component: ' + data.y);
+ console.info('Z-coordinate component: ' + data.z);
+ }
+ );
+ ```
+
+### GYROSCOPE(deprecated)
+
+once(type: SensorType.SENSOR_TYPE_ID_GYROSCOPE, callback: Callback<GyroscopeResponse>): void
+
+监听陀螺仪传感器的数据变化一次。
+
+从API version 9 开始不再维护,建议使用[sensor.once.GYROSCOPE](#gyroscope9-1)代替。
+
+**需要权限**:ohos.permission.GYROSCOPE
+
+**系统能力**:SystemCapability.Sensors.Sensor
+
+**参数:**
+
+| 参数名 | 类型 | 必填 | 说明 |
+| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
+| type | [SensorType](#sensortype) | 是 | 陀螺仪传感器类型为SENSOR_TYPE_ID_GYROSCOPE。 |
+| callback | Callback<[GyroscopeResponse](#gyroscoperesponse)> | 是 | 注册一次陀螺仪传感器的回调函数,上报的数据类型为GyroscopeResponse。 |
+
+**示例:**
+ ```js
+ sensor.once(sensor.SensorType.SENSOR_TYPE_ID_GYROSCOPE, function(data) {
+ console.info('X-coordinate component: ' + data.x);
+ console.info('Y-coordinate component: ' + data.y);
+ console.info('Z-coordinate component: ' + data.z);
+ }
+ );
+ ```
+
+### GYROSCOPE_UNCALIBRATED(deprecated)
+
+once(type: SensorType.SENSOR_TYPE_ID_GYROSCOPE_UNCALIBRATED,callback: Callback<GyroscopeUncalibratedResponse>): void
+
+监听未校准陀螺仪传感器的数据变化一次。
+
+从API version 9 开始不再维护,建议使用[sensor.once.GYROSCOPE_UNCALIBRATED](#gyroscope_uncalibrated9-1)代替。
+
+**需要权限**:ohos.permission.GYROSCOPE
+
+**系统能力**:SystemCapability.Sensors.Sensor
+
+**参数:**
+
+| 参数名 | 类型 | 必填 | 说明 |
+| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
+| type | [SensorType](#sensortype) | 是 | 未校准陀螺仪传感器类型为SENSOR_TYPE_ID_GYROSCOPE_UNCALIBRATED。 |
+| callback | Callback<[GyroscopeUncalibratedResponse](#gyroscopeuncalibratedresponse)> | 是 | 注册一次未校准陀螺仪传感器的回调函数,上报的数据类型为GyroscopeUncalibratedResponse。 |
+
+**示例:**
+ ```js
+ sensor.once(sensor.SensorType.SENSOR_TYPE_ID_GYROSCOPE_UNCALIBRATED, function(data) {
+ console.info('X-coordinate component: ' + data.x);
+ console.info('Y-coordinate component: ' + data.y);
+ console.info('Z-coordinate component: ' + data.z);
+ console.info('X-coordinate bias: ' + data.biasX);
+ console.info('Y-coordinate bias: ' + data.biasY);
+ console.info('Z-coordinate bias: ' + data.biasZ);
+ }
+ );
+ ```
+
+### SIGNIFICANT_MOTION(deprecated)
+
+once(type: SensorType.SENSOR_TYPE_ID_SIGNIFICANT_MOTION,callback: Callback<SignificantMotionResponse>): void
+
+监听有效运动传感器的数据变化一次。
+
+从API version 9 开始不再维护,建议使用[sensor.once.SIGNIFICANT_MOTION](#significant_motion9-1)代替。
+
+**系统能力**:SystemCapability.Sensors.Sensor
+
+**参数:**
+
+| 参数名 | 类型 | 必填 | 说明 |
+| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
+| type | [SensorType](#sensortype) | 是 | 有效运动传感器类型为SENSOR_TYPE_ID_SIGNIFICANT_MOTION。 |
+| callback | Callback<[SignificantMotionResponse](#significantmotionresponse)> | 是 | 注册一次有效运动传感器的回调函数,上报的数据类型为SignificantMotionResponse。 |
+
+**示例:**
+ ```js
+ sensor.once(sensor.SensorType.SENSOR_TYPE_ID_SIGNIFICANT_MOTION, function(data) {
+ console.info('Scalar data: ' + data.scalar);
+ }
+ );
+ ```
+
+### PEDOMETER_DETECTION(deprecated)
+
+once(type: SensorType.SENSOR_TYPE_ID_PEDOMETER_DETECTION,callback: Callback<PedometerDetectionResponse>): void
+
+监听计步检测传感器数据变化一次。
+
+从API version 9 开始不再维护,建议使用[sensor.once.PEDOMETER_DETECTION](#pedometer_detection9-1)代替。
+
+**需要权限**:ohos.permission.ACTIVITY_MOTION
+
+**系统能力**:SystemCapability.Sensors.Sensor
+
+**参数:**
+
+| 参数名 | 类型 | 必填 | 说明 |
+| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
+| type | [SensorType](#sensortype) | 是 | 计步检测传感器类型为SENSOR_TYPE_ID_PEDOMETER_DETECTION。 |
+| callback | Callback<[PedometerDetectionResponse](#pedometerdetectionresponse)> | 是 | 注册一次计步检测传感器的回调函数,上报的数据类型为PedometerDetectionResponse。 |
+
+**示例:**
+ ```js
+ sensor.once(sensor.SensorType.SENSOR_TYPE_ID_PEDOMETER_DETECTION, function(data) {
+ console.info('Scalar data: ' + data.scalar);
+ }
+ );
+ ```
+
+### PEDOMETER(deprecated)
+
+once(type: SensorType.SENSOR_TYPE_ID_PEDOMETER, callback: Callback<PedometerResponse>): void
+
+监听计步器传感器数据变化一次。
+
+从API version 9 开始不再维护,建议使用[sensor.once.PEDOMETER](#pedometer9-1)代替。
+
+**需要权限**:ohos.permission.ACTIVITY_MOTION
+
+**系统能力**:SystemCapability.Sensors.Sensor
+
+**参数:**
+
+| 参数名 | 类型 | 必填 | 说明 |
+| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
+| type | [SensorType](#sensortype) | 是 | 计步传感器类型为SENSOR_TYPE_ID_PEDOMETER。 |
+| callback | Callback<[PedometerResponse](#pedometerresponse)> | 是 | 注册一次计步传感器的回调函数,上报的数据类型为PedometerResponse。 |
+
+**示例:**
+ ```js
+ sensor.once(sensor.SensorType.SENSOR_TYPE_ID_PEDOMETER, function(data) {
+ console.info('Steps: ' + data.steps);
+ }
+ );
+ ```
+
+### AMBIENT_TEMPERATURE(deprecated)
+
+once(type: SensorType.SENSOR_TYPE_ID_AMBIENT_TEMPERATURE,callback: Callback<AmbientTemperatureResponse>): void
+
+监听环境温度传感器数据变化一次。
+
+从API version 9 开始不再维护,建议使用[sensor.once.AMBIENT_TEMPERATURE](#ambient_temperature9-1)代替。
+
+**系统能力**:SystemCapability.Sensors.Sensor
+
+**参数:**
+
+| 参数名 | 类型 | 必填 | 说明 |
+| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
+| type | [SensorType](#sensortype) | 是 | 环境温度传感器类型为SENSOR_TYPE_ID_AMBIENT_TEMPERATURE。 |
+| callback | Callback<[AmbientTemperatureResponse](#ambienttemperatureresponse)> | 是 | 注册一次环境温度传感器的回调函数,上报的数据类型为AmbientTemperatureResponse。 |
+
+**示例:**
+ ```js
+ sensor.once(sensor.SensorType.SENSOR_TYPE_ID_AMBIENT_TEMPERATURE, function(data) {
+ console.info('Temperature: ' + data.temperature);
+ }
+ );
+ ```
+
+### MAGNETIC_FIELD(deprecated)
+
+once(type: SensorType.SENSOR_TYPE_ID_MAGNETIC_FIELD, callback: Callback<MagneticFieldResponse>): void
+
+监听磁场传感器数据变化一次。
+
+从API version 9 开始不再维护,建议使用[sensor.once.MAGNETIC_FIELD](#magnetic_field9-1)代替。
+
+**系统能力**:SystemCapability.Sensors.Sensor
+
+**参数:**
+
+| 参数名 | 类型 | 必填 | 说明 |
+| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
+| type | [SensorType](#sensortype) | 是 | 磁场传感器类型为SENSOR_TYPE_ID_MAGNETIC_FIELD。 |
+| callback | Callback<[MagneticFieldResponse](#magneticfieldresponse)> | 是 | 注册一次磁场传感器的回调函数,上报的数据类型为MagneticFieldResponse。 |
+
+**示例:**
+ ```js
+ sensor.once(sensor.SensorType.SENSOR_TYPE_ID_MAGNETIC_FIELD, function(data) {
+ console.info('X-coordinate component: ' + data.x);
+ console.info('Y-coordinate component: ' + data.y);
+ console.info('Z-coordinate component: ' + data.z);
+ }
+ );
+ ```
+
+### MAGNETIC_FIELD_UNCALIBRATED(deprecated)
+
+once(type: SensorType.SENSOR_TYPE_ID_MAGNETIC_FIELD_UNCALIBRATED,callback: Callback<MagneticFieldUncalibratedResponse>): void
+
+监听未校准磁场传感器数据变化一次。
+
+从API version 9 开始不再维护,建议使用[sensor.once.MAGNETIC_FIELD_UNCALIBRATED](#magnetic_field_uncalibrated9-1)代替。
+
+**系统能力**:SystemCapability.Sensors.Sensor
+
+**参数:**
+
+| 参数名 | 类型 | 必填 | 说明 |
+| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
+| type | [SensorType](#sensortype) | 是 | 未校准磁场传感器类型为SENSOR_TYPE_ID_MAGNETIC_FIELD_UNCALIBRATED。 |
+| callback | Callback<[MagneticFieldUncalibratedResponse](#magneticfielduncalibratedresponse)> | 是 | 注册一次未校准磁场传感器的回调函数,上报的数据类型为MagneticFieldUncalibratedResponse。 |
+
+**示例:**
+ ```js
+ sensor.once(sensor.SensorType.SENSOR_TYPE_ID_MAGNETIC_FIELD_UNCALIBRATED, function(data) {
+ console.info('X-coordinate component: ' + data.x);
+ console.info('Y-coordinate component: ' + data.y);
+ console.info('Z-coordinate component: ' + data.z);
+ console.info('X-coordinate bias: ' + data.biasX);
+ console.info('Y-coordinate bias: ' + data.biasY);
+ console.info('Z-coordinate bias: ' + data.biasZ);
+ }
+ );
+ ```
+
+### PROXIMITY(deprecated)
+
+once(type: SensorType.SENSOR_TYPE_ID_PROXIMITY, callback: Callback<ProximityResponse>): void
+
+监听接近光传感器数据变化一次。
+
+从API version 9 开始不再维护,建议使用[sensor.once.PROXIMITY](#proximity9-1)代替。
+
+**系统能力**:SystemCapability.Sensors.Sensor
+
+**参数:**
+
+| 参数名 | 类型 | 必填 | 说明 |
+| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
+| type | [SensorType](#sensortype) | 是 | 接近光传感器类型为SENSOR_TYPE_ID_PROXIMITY。 |
+| callback | Callback<[ProximityResponse](#proximityresponse)> | 是 | 注册一次接近光传感器的回调函数,上报的数据类型为ProximityResponse。 |
+
+**示例:**
+ ```js
+ sensor.once(sensor.SensorType.SENSOR_TYPE_ID_PROXIMITY, function(data) {
+ console.info('Distance: ' + data.distance);
+ }
+ );
+ ```
+
+### HUMIDITY(deprecated)
+
+once(type: SensorType.SENSOR_TYPE_ID_HUMIDITY, callback: Callback<HumidityResponse>): void
+
+监听湿度传感器数据变化一次。
+
+从API version 9 开始不再维护,建议使用[sensor.once.HUMIDITY](#humidity9-1)代替。
+
+**系统能力**:SystemCapability.Sensors.Sensor
+
+**参数:**
+
+| 参数名 | 类型 | 必填 | 说明 |
+| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
+| type | [SensorType](#sensortype) | 是 | 湿度传感器类型为SENSOR_TYPE_ID_HUMIDITY。 |
+| callback | Callback<[HumidityResponse](#humidityresponse)> | 是 | 注册一次湿度传感器的回调函数,上报的数据类型为HumidityResponse。 |
+
+**示例:**
+ ```js
+ sensor.once(sensor.SensorType.SENSOR_TYPE_ID_HUMIDITY, function(data) {
+ console.info('Humidity: ' + data.humidity);
+ }
+ );
+ ```
+
+### BAROMETER(deprecated)
+
+once(type: SensorType.SENSOR_TYPE_ID_BAROMETER, callback: Callback<BarometerResponse>): void
+
+监听气压计传感器数据变化一次。
+
+从API version 9 开始不再维护,建议使用[sensor.once.BAROMETER](#barometer9-1)代替。
+
+**系统能力**:SystemCapability.Sensors.Sensor
+
+**参数:**
+
+| 参数名 | 类型 | 必填 | 说明 |
+| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
+| type | [SensorType](#sensortype) | 是 | 气压计传感器类型为SENSOR_TYPE_ID_BAROMETER。 |
+| callback | Callback<[BarometerResponse](#barometerresponse)> | 是 | 注册一次气压计传感器的回调函数,上报的数据类型为BarometerResponse。 |
+
+**示例:**
+ ```js
+ sensor.once(sensor.SensorType.SENSOR_TYPE_ID_BAROMETER, function(data) {
+ console.info('Atmospheric pressure: ' + data.pressure);
+ }
+ );
+ ```
+
+### HALL(deprecated)
+
+once(type: SensorType.SENSOR_TYPE_ID_HALL, callback: Callback<HallResponse>): void
+
+监听霍尔传感器数据变化一次。
+
+从API version 9 开始不再维护,建议使用[sensor.once.HALL](#hall9-1)代替。
+
+**系统能力**:SystemCapability.Sensors.Sensor
+
+**参数:**
+
+| 参数名 | 类型 | 必填 | 说明 |
+| -------- | ---------------------------------------- | ---- | ------------------------------------ |
+| type | [SensorType](#sensortype) | 是 | 霍尔传感器类型为SENSOR_TYPE_ID_HALL。 |
+| callback | Callback<[HallResponse](#hallresponse)> | 是 | 注册一次霍尔传感器的回调函数,上报的数据类型为HallResponse。 |
+
+**示例:**
+ ```js
+ sensor.once(sensor.SensorType.SENSOR_TYPE_ID_HALL, function(data) {
+ console.info('Status: ' + data.status);
+ }
+ );
+ ```
+
+### AMBIENT_LIGHT(deprecated)
+
+once(type: SensorType.SENSOR_TYPE_ID_AMBIENT_LIGHT, callback: Callback<LightResponse>): void
+
+监听环境光传感器数据变化一次。
+
+从API version 9 开始不再维护,建议使用[sensor.once.AMBIENT_LIGHT](#ambient_light9-1)代替。
+
+**系统能力**:SystemCapability.Sensors.Sensor
+
+**参数:**
+
+| 参数名 | 类型 | 必填 | 说明 |
+| -------- | ---------------------------------------- | ---- | -------------------------------------- |
+| type | [SensorType](#sensortype) | 是 | 环境光传感器类型为SENSOR_TYPE_ID_AMBIENT_LIGHT。 |
+| callback | Callback<[LightResponse](#lightresponse)> | 是 | 注册一次环境光传感器的回调函数,上报的数据类型为LightResponse。 |
+
+**示例:**
+
+ ```js
+ sensor.once(sensor.SensorType.SENSOR_TYPE_ID_AMBIENT_LIGHT, function(data) {
+ console.info(' Illumination: ' + data.intensity);
+ }
+ );
+ ```
+
+### ORIENTATION(deprecated)
+
+once(type: SensorType.SENSOR_TYPE_ID_ORIENTATION, callback: Callback<OrientationResponse>): void
+
+监听方向传感器数据变化一次。
+
+从API version 9 开始不再维护,建议使用[sensor.once.ORIENTATION](#orientation9-1)代替。
+
+**系统能力**:SystemCapability.Sensors.Sensor
+
+**参数:**
+
+| 参数名 | 类型 | 必填 | 说明 |
+| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
+| type | [SensorType](#sensortype) | 是 | 方向传感器类型为SENSOR_TYPE_ID_ORIENTATION。 |
+| callback | Callback<[OrientationResponse](#orientationresponse)> | 是 | 注册一次方向传感器的回调函数,上报的数据类型为OrientationResponse。 |
+
+**示例:**
+ ```js
+ sensor.once(sensor.SensorType.SENSOR_TYPE_ID_ORIENTATION, function(data) {
+ console.info('The device rotates at an angle around the X axis: ' + data.beta);
+ console.info('The device rotates at an angle around the Y axis: ' + data.gamma);
+ console.info('The device rotates at an angle around the Z axis: ' + data.alpha);
+ }
+ );
+ ```
+
+### ROTATION_VECTOR(deprecated)
+
+once(type: SensorType.SENSOR_TYPE_ID_ROTATION_VECTOR, callback: Callback<RotationVectorResponse>): void
+
+监听旋转矢量传感器数据变化一次。
+
+从API version 9 开始不再维护,建议使用[sensor.once.ROTATION_VECTOR](#rotation_vector9-1)代替。
+
+**系统能力**:SystemCapability.Sensors.Sensor
+
+**参数:**
+
+| 参数名 | 类型 | 必填 | 说明 |
+| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
+| type | [SensorType](#sensortype) | 是 | 旋转矢量传感器类型为SENSOR_TYPE_ID_ROTATION_VECTOR。 |
+| callback | Callback<[RotationVectorResponse](#rotationvectorresponse)> | 是 | 注册一次旋转矢量传感器的回调函数,上报的数据类型为RotationVectorResponse。 |
+
+**示例:**
+ ```js
+ sensor.once(sensor.SensorType.SENSOR_TYPE_ID_ROTATION_VECTOR, function(data) {
+ console.info('X-coordinate component: ' + data.x);
+ console.info('Y-coordinate component: ' + data.y);
+ console.info('Z-coordinate component: ' + data.z);
+ console.info('Scalar quantity: ' + data.w);
+ }
+ );
+ ```
+
+### HEART_RATE(deprecated)
+
+once(type: SensorType.SENSOR_TYPE_ID_HEART_RATE, callback: Callback<HeartRateResponse>): void
+
+监听心率传感器数据变化一次。
+
+从API version 9 开始不再维护,建议使用[sensor.once.HEART_BEAT_RATE](#heart_beat_rate9)代替。
+
+**需要权限**:ohos.permission.HEART_RATE
+
+**系统能力**:SystemCapability.Sensors.Sensor
+
+**参数:**
+
+| 参数名 | 类型 | 必填 | 说明 |
+| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
+| type | [SensorType](#sensortype) | 是 | 心率传感器类型为SENSOR_TYPE_ID_HEART_RATE。 |
+| callback | Callback<[HeartRateResponse](#heartrateresponse)> | 是 | 注册一次心率传感器的回调函数,上报的数据类型为HeartRateResponse。 |
+
+### HEART_BEAT_RATE9+
+
+once(type: SensorType.SENSOR_TYPE_ID_HEART_RATE, callback: Callback<HeartRateResponse>): void
+
+订阅一次心率传感器数据。
+
+**需要权限**:ohos.permission.HEART_RATE
+
+**系统能力**:SystemCapability.Sensors.Sensor
+
+**参数:**
+
+| 参数名 | 类型 | 必填 | 说明 |
+| -------- | ------------------------------------------------------- | ---- | ------------------------------------------------------------ |
+| type | [SensorType](#sensortype) | 是 | 心率传感器类型为SENSOR_TYPE_ID_HEART_BEAT_RATE。 |
+| callback | Callback<[HeartRateResponse](#heartrateresponse)> | 是 | 注册一次心率传感器的回调函数,上报的数据类型为HeartRateResponse。 |
+
+**示例:**
+
+ ```js
+ sensor.once(sensor.SensorType.SENSOR_TYPE_ID_HEART_BEAT_RATE, function(data) {
+ console.info("Heart rate: " + data.heartRate);
+ }
+ );
+ ```
+
+### WEAR_DETECTION(deprecated)
+
+once(type: SensorType.SENSOR_TYPE_ID_WEAR_DETECTION, callback: Callback<WearDetectionResponse>): void
+
+监听佩戴检测传感器数据变化一次。
+
+从API version 9 开始不再维护,建议使用[sensor.once.WEAR_DETECTION](#wear_detection9-1)代替。
+
+**系统能力**:SystemCapability.Sensors.Sensor
+
+**参数:**
+
+| 参数名 | 类型 | 必填 | 说明 |
+| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
+| type | [SensorType](#sensortype) | 是 | 佩戴检测传感器类型为SENSOR_TYPE_ID_WEAR_DETECTION。 |
+| callback | Callback<[WearDetectionResponse](#weardetectionresponse)> | 是 | 注册一次穿戴检测传感器的回调函数,上报的数据类型为WearDetectionResponse。 |
+
+**示例:**
+ ```js
+ sensor.once(sensor.SensorType.SENSOR_TYPE_ID_WEAR_DETECTION, function(data) {
+ console.info("Wear status: "+ data.value);
+ }
+ );
+ ```
+
+## sensor.off(deprecated)
+
+### ACCELEROMETER(deprecated)
+
+off(type: SensorType.SENSOR_TYPE_ID_ACCELEROMETER, callback?: Callback<AccelerometerResponse>): void
+
+取消订阅传感器数据。
+
+从API version 9 开始不再维护,建议使用[sensor.off.ACCELEROMETER](#accelerometer9-2)代替。
+
+**需要权限**:ohos.permission.ACCELEROMETER
+
+**系统能力**:SystemCapability.Sensors.Sensor
+
+**参数:**
+
+| 参数名 | 类型 | 必填 | 说明 |
+| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
+| type | [SensorType](#sensortype) | 是 | 要取消订阅的加速度传感器类型为SENSOR_TYPE_ID_ACCELEROMETER。 |
+| callback | Callback<[AccelerometerResponse](#accelerometerresponse)> | 是 | 取消注册加速度传感器的回调函数,上报的数据类型为AccelerometerResponse。 |
+
+**示例:**
+
+```js
+function callback(data) {
+ console.info('x-coordinate component: ' + data.x);
+ console.info('Y-coordinate component: ' + data.y);
+ console.info('Z-coordinate component: ' + data.z);
+}
+sensor.off(sensor.SensorType.SENSOR_TYPE_ID_ACCELEROMETER, callback);
+```
+
+### ACCELEROMETER_UNCALIBRATED(deprecated)
+
+off(type: SensorType.SENSOR_TYPE_ID_ACCELEROMETER_UNCALIBRATED, callback?: Callback<AccelerometerUncalibratedResponse>): void
+
+取消订阅传感器数据。
+
+从API version 9 开始不再维护,建议使用[sensor.off.ACCELEROMETER_UNCALIBRATED](#accelerometer_uncalibrated9-2)代替。
+
+**需要权限**:ohos.permission.ACCELEROMETER
+
+**系统能力**:SystemCapability.Sensors.Sensor
+
+**参数:**
+
+| 参数名 | 类型 | 必填 | 说明 |
+| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
+| type | [SensorType](#sensortype) | 是 | 要取消订阅的未校准加速度计传感器类型为SENSOR_TYPE_ID_ACCELEROMETER_UNCALIBRATED。 |
+| callback | Callback<[AccelerometerUncalibratedResponse](#accelerometeruncalibratedresponse)> | 是 | 取消注册未校准加速度计传感器的回调函数,上报的数据类型为AccelerometerUncalibratedResponse。 |
+
+**示例:**
+
+```js
+function callback(data) {
+ console.info('X-coordinate component: ' + data.x);
+ console.info('Y-coordinate component: ' + data.y);
+ console.info('Z-coordinate component: ' + data.z);
+ console.info('X-coordinate bias: ' + data.biasX);
+ console.info('Y-coordinate bias: ' + data.biasY);
+ console.info('Z-coordinate bias: ' + data.biasZ);
+}
+sensor.off(sensor.SensorType.SENSOR_TYPE_ID_ACCELEROMETER_UNCALIBRATED, callback);
+```
+
+### AMBIENT_LIGHT(deprecated)
+
+off(type: SensorType.SENSOR_TYPE_ID_AMBIENT_LIGHT, callback?: Callback<LightResponse>): void
+
+取消订阅传感器数据。
+
+从API version 9 开始不再维护,建议使用[sensor.off.AMBIENT_LIGHT](#ambient_light9-2)代替。
+
+**系统能力**:SystemCapability.Sensors.Sensor
+
+**参数:**
+
+| 参数名 | 类型 | 必填 | 说明 |
+| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
+| type | [SensorType](#sensortype) | 是 | 要取消订阅的环境光传感器类型为SENSOR_TYPE_ID_AMBIENT_LIGHT。 |
+| callback | Callback<[LightResponse](#lightresponse)> | 是 | 取消注册环境光传感器的回调函数,上报的数据类型为LightResponse。 |
+
+**示例:**
+
+```js
+function callback(data) {
+ console.info(' Illumination: ' + data.intensity);
+}
+sensor.off(sensor.SensorType.SENSOR_TYPE_ID_AMBIENT_LIGHT, callback);
+```
+
+### AMBIENT_TEMPERATURE(deprecated)
+
+off(type: SensorType.SENSOR_TYPE_ID_AMBIENT_TEMPERATURE, callback?: Callback<AmbientTemperatureResponse>): void
+
+取消订阅传感器数据。
+
+从API version 9 开始不再维护,建议使用[sensor.off.AMBIENT_TEMPERATURE](#ambient_temperature9-2)代替。
+
+**系统能力**:SystemCapability.Sensors.Sensor
+
+**参数:**
+
+| 参数名 | 类型 | 必填 | 说明 |
+| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
+| type | [SensorType](#sensortype) | 是 | 要取消订阅的环境温度传感器类型为SENSOR_TYPE_ID_AMBIENT_TEMPERATURE。 |
+| callback | Callback<[AmbientTemperatureResponse](#ambienttemperatureresponse)> | 是 | 取消注册环境温度传感器的回调函数,上报的数据类型为AmbientTemperatureResponse。 |
+
+**示例:**
+
+```js
+function callback(data) {
+ console.info('Temperature: ' + data.temperature);
+}
+sensor.off(sensor.SensorType.SENSOR_TYPE_ID_AMBIENT_TEMPERATURE, callback);
+```
+
+### BAROMETER(deprecated)
+
+off(type: SensorType.SENSOR_TYPE_ID_BAROMETER, callback?: Callback<BarometerResponse>): void
+
+取消订阅传感器数据。
+
+从API version 9 开始不再维护,建议使用[sensor.off.BAROMETER](#barometer9-2)代替。
+
+**系统能力**:SystemCapability.Sensors.Sensor
+
+**参数:**
+
+| 参数名 | 类型 | 必填 | 说明 |
+| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
+| type | [SensorType](#sensortype) | 是 | 要取消订阅的气压计传感器类型为SENSOR_TYPE_ID_BAROMETER。 |
+| callback | Callback<[BarometerResponse](#barometerresponse)> | 是 | 取消注册气压计传感器的回调函数,上报的数据类型为BarometerResponse。 |
+
+**示例:**
+
+```js
+function callback(data) {
+ console.info('Atmospheric pressure: ' + data.pressure);
+}
+sensor.off(sensor.SensorType.SENSOR_TYPE_ID_BAROMETER, callback);
+```
+
+### GRAVITY(deprecated)
+
+off(type: SensorType.SENSOR_TYPE_ID_GRAVITY, callback?: Callback<GravityResponse>): void
+
+取消订阅传感器数据。
+
+从API version 9 开始不再维护,建议使用[sensor.off.GRAVITY](#gravity9-2)代替。
+
+**系统能力**:SystemCapability.Sensors.Sensor
+
+**参数:**
+
+| 参数名 | 类型 | 必填 | 说明 |
+| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
+| type | [SensorType](#sensortype) | 是 | 要取消订阅的重力传感器类型为SENSOR_TYPE_ID_GRAVITY。 |
+| callback | Callback<[GravityResponse](#gravityresponse)> | 是 | 取消注册注册重力传感器的回调函数,上报的数据类型为GravityResponse。 |
+
+**示例:**
+
+```js
+function callback(data) {
+ console.info('X-coordinate component: ' + data.x);
+ console.info('Y-coordinate component: ' + data.y);
+ console.info('Z-coordinate component: ' + data.z);
+}
+sensor.off( sensor.SensorType.SENSOR_TYPE_ID_GRAVITY, callback);
+```
+
+### GYROSCOPE(deprecated)
+
+off(type: SensorType.SENSOR_TYPE_ID_GYROSCOPE, callback?: Callback<GyroscopeResponse>): void
+
+取消订阅传感器数据。
+
+从API version 9 开始不再维护,建议使用[sensor.off.GYROSCOPE](#gyroscope9-2)代替。
+
+**需要权限**:ohos.permission.GYROSCOPE
+
+**系统能力**:SystemCapability.Sensors.Sensor
+
+**参数:**
+
+| 参数名 | 类型 | 必填 | 说明 |
+| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
+| type | [SensorType](#sensortype) | 是 | 要取消订阅的陀螺仪传感器类型为SENSOR_TYPE_ID_GYROSCOPE。 |
+| callback | Callback<[GyroscopeResponse](#gyroscoperesponse)> | 是 | 取消注册陀螺仪传感器的回调函数,上报的数据类型为GyroscopeResponse。 |
+
+**示例:**
+
+```js
+function callback(data) {
+ console.info('X-coordinate component: ' + data.x);
+ console.info('Y-coordinate component: ' + data.y);
+ console.info('Z-coordinate component: ' + data.z);
+}
+sensor.off(sensor.SensorType.SENSOR_TYPE_ID_GYROSCOPE, callback);
+```
+
+### GYROSCOPE_UNCALIBRATED(deprecated)
+
+off(type: SensorType.SENSOR_TYPE_ID_GYROSCOPE_UNCALIBRATED, callback?: Callback<GyroscopeUncalibratedResponse>): void
+
+取消订阅传感器数据。
+
+从API version 9 开始不再维护,建议使用[sensor.off.GYROSCOPE_UNCALIBRATED](#gyroscope_uncalibrated9-2)代替。
+
+**需要权限**:ohos.permission.GYROSCOPE
+
+**系统能力**:SystemCapability.Sensors.Sensor
+
+**参数:**
+
+| 参数名 | 类型 | 必填 | 说明 |
+| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
+| type | [SensorType](#sensortype) | 是 | 要取消订阅的未校准陀螺仪传感器类型为SENSOR_TYPE_ID_GYROSCOPE_UNCALIBRATED。 |
+| callback | Callback<[GyroscopeUncalibratedResponse](#gyroscopeuncalibratedresponse)> | 是 | 取消注册未校准陀螺仪传感器的回调函数,上报的数据类型为GyroscopeUncalibratedResponse。 |
+
+**示例:**
+
+```js
+function callback(data) {
+ console.info('X-coordinate component: ' + data.x);
+ console.info('Y-coordinate component: ' + data.y);
+ console.info('Z-coordinate component: ' + data.z);
+}
+sensor.off(sensor.SensorType.SENSOR_TYPE_ID_GYROSCOPE_UNCALIBRATED, callback);
+```
+
+### HALL(deprecated)
+
+off(type: SensorType.SENSOR_TYPE_ID_HALL, callback?: Callback<HallResponse>): void
+
+取消订阅传感器数据。
+
+从API version 9 开始不再维护,建议使用[sensor.off.HALL](#hall9-2)代替。
+
+**系统能力**:SystemCapability.Sensors.Sensor
+
+**参数:**
+
+| 参数名 | 类型 | 必填 | 说明 |
+| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
+| type | [SensorType](#sensortype) | 是 | 要取消订阅的霍尔传感器类型为SENSOR_TYPE_ID_HALL。 |
+| callback | Callback<[HallResponse](#hallresponse)> | 是 | 取消注册霍尔传感器的回调函数,上报的数据类型为 HallResponse。 |
+
+**示例:**
+
+```js
+function callback(data) {
+ console.info('Status: ' + data.status);
+}
+sensor.off(sensor.SensorType.SENSOR_TYPE_ID_HALL, callback);
+```
+
+### HEART_RATE(deprecated)
+
+off(type: SensorType.SENSOR_TYPE_ID_HEART_RATE, callback?: Callback<HeartRateResponse>): void
+
+取消订阅传感器数据。
+
+从API version 9 开始不再维护,建议使用[sensor.off.HEART_BEAT_RATE](#heart_beat_rate9)代替。
+
+**需要权限**:ohos.permission.HEALTH_DATA
+
+**系统能力**:SystemCapability.Sensors.Sensor
+
+**参数:**
+
+| 参数名 | 类型 | 必填 | 说明 |
+| -------- | ------------------------------------------------------- | ---- | ------------------------------------------------------------ |
+| type | [SensorType](#sensortype) | 是 | 要取消订阅的心率传感器类型为SENSOR_TYPE_ID_HEART_RATE。 |
+| callback | Callback<[HeartRateResponse](#heartrateresponse)> | 是 | 取消注册一次心率传感器的回调函数,上报的数据类型为HeartRateResponse。 |
+
+### HEART_BEAT_RATE9+
+
+off(type: SensorType.SENSOR_TYPE_ID_HEART_RATE, callback?: Callback<HeartRateResponse>): void
+
+取消订阅传感器数据。
+
+**需要权限**:ohos.permission.HEALTH_DATA
+
+**系统能力**:SystemCapability.Sensors.Sensor
+
+**参数:**
+
+| 参数名 | 类型 | 必填 | 说明 |
+| -------- | ------------------------------------------------------- | ---- | ------------------------------------------------------------ |
+| type | [SensorType](#sensortype) | 是 | 要取消订阅的心率传感器类型为SENSOR_TYPE_ID_HEART_BEAT_RATE。 |
+| callback | Callback<[HeartRateResponse](#heartrateresponse)> | 是 | 取消注册一次心率传感器的回调函数,上报的数据类型为HeartRateResponse。 |
+
+**示例:**
+
+```js
+function callback(data) {
+ console.info("Heart rate: " + data.heartRate);
+}
+sensor.off(sensor.SensorType.SENSOR_TYPE_ID_HEART_BEAT_RATE, callback);
+```
+
+### HUMIDITY(deprecated)
+
+off(type: SensorType.SENSOR_TYPE_ID_HUMIDITY, callback?: Callback<HumidityResponse>): void
+
+取消订阅传感器数据。
+
+从API version 9 开始不再维护,建议使用[sensor.off.HUMIDITY](#humidity9-2)代替。
+
+**系统能力**:SystemCapability.Sensors.Sensor
+
+**参数:**
+
+| 参数名 | 类型 | 必填 | 说明 |
+| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
+| type | [SensorType](#sensortype) | 是 | 要取消订阅的湿度传感器类型为SENSOR_TYPE_ID_HUMIDITY。 |
+| callback | Callback<[HumidityResponse](#humidityresponse)> | 是 | 取消注册湿度传感器的回调函数,上报的数据类型为HumidityResponse。 |
+
+**示例:**
+
+```js
+function callback(data) {
+ console.info('Humidity: ' + data.humidity);
+}
+sensor.off(sensor.SensorType.SENSOR_TYPE_ID_HUMIDITY, callback);
+```
+
+### LINEAR_ACCELERATION(deprecated)
+
+off(type: SensorType.SENSOR_TYPE_ID_LINEAR_ACCELERATION, callback?: Callback<LinearAccelerometerResponse>): void
+
+取消订阅传感器数据。
+
+从API version 9 开始不再维护,建议使用[sensor.off.LINEAR_ACCELEROMETER](#linear_accelerometer9)代替。
+
+**需要权限**:ohos.permission.ACCELEROMETER
+
+**系统能力**:SystemCapability.Sensors.Sensor
+
+**参数:**
+
+| 参数名 | 类型 | 必填 | 说明 |
+| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
+| type | [SensorType](#sensortype) | 是 | 要取消订阅的线性加速度传感器类型为SENSOR_TYPE_ID_LINEAR_ACCELERATION。 |
+| callback | Callback<[LinearAccelerometerResponse](#linearaccelerometerresponse)> | 是 | 取消注册性加速度传感器的回调函数,上报的数据类型为LinearAccelerometerResponse。 |
+
+### LINEAR_ACCELEROMETER9+
+
+off(type: SensorType.SENSOR_TYPE_ID_LINEAR_ACCELERATION,callback?:Callback<LinearAccelerometerResponse>): void
+
+取消订阅传感器数据。
+
+**需要权限**:ohos.permission.ACCELEROMETER
+
+**系统能力**:SystemCapability.Sensors.Sensor
+
+**参数:**
+
+| 参数名 | 类型 | 必填 | 说明 |
+| -------- | ------------------------------------------------------------ | ---- | ------------------------------------------------------------ |
+| type | [SensorType](#sensortype) | 是 | 要取消订阅的线性加速度传感器类型为SENSOR_TYPE_ID_LINEAR_ACCELEROMETER。 |
+| callback | Callback<[LinearAccelerometerResponse](#linearaccelerometerresponse)> | 是 | 取消注册性加速度传感器的回调函数,上报的数据类型为LinearAccelerometerResponse。 |
+
+**示例:**
+
+```js
+function callback(data) {
+ console.info('X-coordinate component: ' + data.x);
+ console.info('Y-coordinate component: ' + data.y);
+ console.info('Z-coordinate component: ' + data.z);
+}
+sensor.off(sensor.SensorType.SENSOR_TYPE_ID_LINEAR_ACCELEROMETER, callback);
+```
+
+### MAGNETIC_FIELD(deprecated)
+
+ off(type: SensorType.SENSOR_TYPE_ID_MAGNETIC_FIELD, callback?: Callback<MagneticFieldResponse>): void
+
+取消订阅传感器数据。
+
+从API version 9 开始不再维护,建议使用[sensor.off.MAGNETIC_FIELD](#magnetic_field9-2)代替。
+
+**系统能力**:SystemCapability.Sensors.Sensor
+
+**参数:**
+
+| 参数名 | 类型 | 必填 | 说明 |
+| ---------------- | ---------------------------------------- | ---- | ---------------------------------------- |
+| type | [SensorType](#sensortype) | 是 | 要取消订阅的磁场传感器类型为SENSOR_TYPE_ID_MAGNETIC_FIELD。 |
+| callbackcallback | Callback<[MagneticFieldResponse](#magneticfieldresponse)> | 是 | 取消注册磁场传感器的回调函数,上报的数据类型为MagneticFieldResponse。 |
**示例:**
- ```js
- const promise = sensor.createRotationMatrix([0.20046076, 0.21907, 0.73978853, 0.60376877]);
- promise.then((data) => {
- console.info('createRotationMatrix_promise success');
- for (var i=0; i < data.length; i++) {
- console.info("data[" + i + "]: " + data[i]);
- }
- }).catch((reason) => {
- console.info("promise::catch", reason);
- })
- ```
+```js
+function callback(data) {
+ console.info('X-coordinate component: ' + data.x);
+ console.info('Y-coordinate component: ' + data.y);
+ console.info('Z-coordinate component: ' + data.z);
+}
+sensor.off(sensor.SensorType.SENSOR_TYPE_ID_MAGNETIC_FIELD, callback);
+```
+### MAGNETIC_FIELD_UNCALIBRATED(deprecated)
-## sensor.createQuaternion
+ off(type: SensorType.SENSOR_TYPE_ID_MAGNETIC_FIELD_UNCALIBRATED, callback?: Callback<MagneticFieldUncalibratedResponse>): void
-createQuaternion(rotationVector: Array<number>, callback: AsyncCallback<Array<number>>): void
+取消订阅传感器数据。
-将旋转矢量转换为四元数。
+从API version 9 开始不再维护,建议使用[sensor.off.MAGNETIC_FIELD_UNCALIBRATED](#magnetic_field_uncalibrated9-2)代替。
**系统能力**:SystemCapability.Sensors.Sensor
**参数:**
-| 参数名 | 类型 | 必填 | 说明 |
-| -------------- | ---------------------------------------- | ---- | ------- |
-| rotationVector | Array<number> | 是 | 表示旋转矢量。 |
-| callback | AsyncCallback<Array<number>> | 是 | 返回四元数。 |
+| 参数名 | 类型 | 必填 | 说明 |
+| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
+| type | [SensorType](#sensortype) | 是 | 要取消订阅的未校准磁场传感器类型为SENSOR_TYPE_ID_MAGNETIC_FIELD_UNCALIBRATED。 |
+| callback | Callback<[MagneticFieldUncalibratedResponse](#magneticfielduncalibratedresponse)> | 是 | 取消注册未校准磁场传感器的回调函数,上报的数据类型为MagneticFieldUncalibratedResponse。 |
**示例:**
- ```js
- sensor.createQuaternion([0.20046076, 0.21907, 0.73978853, 0.60376877], function(err, data) {
- if (err) {
- console.error('SensorJsAPI--->Failed to register data, error code is: ' + err.code + ', message: ' +
- err.message);
- return;
- }
- for (var i=0; i < data.length; i++) {
- console.info("data[" + i + "]: " + data[i]);
- }
- })
- ```
+```js
+function callback(data) {
+ console.info('X-coordinate component: ' + data.x);
+ console.info('Y-coordinate component: ' + data.y);
+ console.info('Z-coordinate component: ' + data.z);
+ console.info('X-coordinate bias: ' + data.biasX);
+ console.info('Y-coordinate bias: ' + data.biasY);
+ console.info('Z-coordinate bias: ' + data.biasZ);
+}
+sensor.off(sensor.SensorType.SENSOR_TYPE_ID_MAGNETIC_FIELD_UNCALIBRATED, callback);
+```
+### ORIENTATION(deprecated)
-## sensor.createQuaternion
+ off(type: SensorType.SENSOR_TYPE_ID_ORIENTATION, callback?: Callback<OrientationResponse>): void
-createQuaternion(rotationVector: Array<number>): Promise<Array<number>>
+取消订阅传感器数据。
-将旋转矢量转换为四元数。
+从API version 9 开始不再维护,建议使用[sensor.off.ORIENTATION](#orientation9-2)代替。
**系统能力**:SystemCapability.Sensors.Sensor
**参数:**
-| 参数名 | 类型 | 必填 | 说明 |
-| -------------- | ------------------- | ---- | ------- |
-| rotationVector | Array<number> | 是 | 表示旋转矢量。 |
-
-**返回值:**
-
-| 类型 | 说明 |
-| ---------------------------------- | ------ |
-| Promise<Array<number>> | 返回四元数。 |
+| 参数名 | 类型 | 必填 | 说明 |
+| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
+| type | [SensorType](#sensortype) | 是 | 要取消订阅的方向传感器类型为SENSOR_TYPE_ID_ORIENTATION |
+| callback | Callback<[OrientationResponse](#orientationresponse)> | 是 | 取消注册方向传感器的回调函数,上报的数据类型为OrientationResponse。 |
**示例:**
- ```js
- const promise = sensor.createQuaternion([0.20046076, 0.21907, 0.73978853, 0.60376877]);
- promise.then((data) => {
- console.info('createQuaternion_promise successed');
- for (var i=0; i < data.length; i++) {
- console.info("data[" + i + "]: " + data[i]);
- }
- }).catch((err) => {
- console.info('promise failed');
- })
- ```
+```js
+function callback(data) {
+ console.info('The device rotates at an angle around the X axis: ' + data.beta);
+ console.info('The device rotates at an angle around the Y axis: ' + data.gamma);
+ console.info('The device rotates at an angle around the Z axis: ' + data.alpha);
+}
+sensor.off(sensor.SensorType.SENSOR_TYPE_ID_ORIENTATION, callback);
+```
+### PEDOMETER(deprecated)
-## sensor.getDirection
+off(type: SensorType.SENSOR_TYPE_ID_PEDOMETER, callback?: Callback<PedometerResponse>): void
-getDirection(rotationMatrix: Array<number>, callback: AsyncCallback<Array<number>>): void
+取消订阅传感器数据。
-根据旋转矩阵计算设备的方向。
+从API version 9 开始不再维护,建议使用[sensor.off.PEDOMETER](#pedometer9-2)代替。
+
+**需要权限**:ohos.permission.ACTIVITY_MOTION
**系统能力**:SystemCapability.Sensors.Sensor
**参数:**
-| 参数名 | 类型 | 必填 | 说明 |
-| -------------- | ---------------------------------------- | ---- | ------------------ |
-| rotationMatrix | Array<number> | 是 | 表示旋转矩阵。 |
-| callback | AsyncCallback<Array<number>> | 是 | 返回围绕z、x、y轴方向的旋转角度。 |
+| 参数名 | 类型 | 必填 | 说明 |
+| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
+| type | [SensorType](#sensortype) | 是 | 要取消订阅的计步传感器类型为SENSOR_TYPE_ID_PEDOMETER。 |
+| callback | Callback<[PedometerResponse](#pedometerresponse)> | 是 | 取消注册计步传感器的回调函数,上报的数据类型为PedometerResponse。 |
**示例:**
- ```js
- sensor.getDirection([1, 0, 0, 0, 1, 0, 0, 0, 1], function(err, data) {
- if (err) {
- console.error('SensorJsAPI--->Failed to register data, error code is: ' + err.code + ', message: ' +
- err.message);
- return;
- }
- console.info("SensorJsAPI--->Successed to get getDirection interface get data: " + data);
- for (var i = 1; i < data.length; i++) {
- console.info("sensor_getDirection_callback" + data[i]);
- }
- })
- ```
+```js
+function callback(data) {
+ console.info('Steps: ' + data.steps);
+}
+sensor.off(sensor.SensorType.SENSOR_TYPE_ID_PEDOMETER, callback);
+```
+### PEDOMETER_DETECTION(deprecated)
-## sensor.getDirection
+off(type: SensorType.SENSOR_TYPE_ID_PEDOMETER_DETECTION, callback?: Callback<PedometerDetectionResponse>): void
-getDirection(rotationMatrix: Array<number>): Promise<Array<number>>
+取消订阅传感器数据。
-根据旋转矩阵计算设备的方向。
+从API version 9 开始不再维护,建议使用[sensor.off.PEDOMETER_DETECTION](#pedometer_detection9-2)代替。
+
+**需要权限**:ohos.permission.ACTIVITY_MOTION
**系统能力**:SystemCapability.Sensors.Sensor
**参数:**
-| 参数名 | 类型 | 必填 | 说明 |
-| -------------- | ------------------- | ---- | ------- |
-| rotationMatrix | Array<number> | 是 | 表示旋转矩阵。 |
-
-**返回值:**
-
-| 类型 | 说明 |
-| ---------------------------------- | ------------------ |
-| Promise<Array<number>> | 返回围绕z、x、y轴方向的旋转角度。 |
+| 参数名 | 类型 | 必填 | 说明 |
+| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
+| type | [SensorType](#sensortype) | 是 | 要取消订阅的计步检测传感器类型为SENSOR_TYPE_ID_PEDOMETER_DETECTION。 |
+| callback | Callback<[PedometerDetectionResponse](#pedometerdetectionresponse)> | 是 | 取消注册计步检测传感器的回调函数,上报的数据类型为PedometerDetectionResponse。 |
**示例:**
- ```js
- const promise = sensor.getDirection([1, 0, 0, 0, 1, 0, 0, 0, 1]);
- promise.then((data) => {
- console.info('sensor_getAltitude_Promise success', data);
- for (var i = 1; i < data.length; i++) {
- console.info("sensor_getDirection_promise" + data[i]);
- }
- }).catch((err) => {
- console.info('promise failed');
- })
- ```
+```js
+function callback(data) {
+ console.info('Scalar data: ' + data.scalar);
+}
+sensor.off(sensor.SensorType.SENSOR_TYPE_ID_PEDOMETER_DETECTION, callback);
+```
+### PROXIMITY(deprecated)
-## sensor.createRotationMatrix
+off(type: SensorType.SENSOR_TYPE_ID_PROXIMITY, callback?: Callback<ProximityResponse>): void
-createRotationMatrix(gravity: Array<number>, geomagnetic: Array<number>, callback: AsyncCallback<RotationMatrixResponse>): void
+取消订阅传感器数据。
-根据重力矢量和地磁矢量计算旋转矩阵。
+从API version 9 开始不再维护,建议使用[sensor.off.PROXIMITY](#proximity9-2)代替。
**系统能力**:SystemCapability.Sensors.Sensor
**参数:**
-| 参数名 | 类型 | 必填 | 说明 |
-| ----------- | ---------------------------------------- | ---- | ------- |
-| gravity | Array<number> | 是 | 表示重力向量。 |
-| geomagnetic | Array<number> | 是 | 表示地磁矢量。 |
-| callback | AsyncCallback<[RotationMatrixResponse](#rotationmatrixresponse)> | 是 | 返回旋转矩阵。 |
+| 参数名 | 类型 | 必填 | 说明 |
+| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
+| type | [SensorType](#sensortype) | 是 | 要取消订阅的接近光传感器类型为SENSOR_TYPE_ID_PROXIMITY。 |
+| callback | Callback<[ProximityResponse](#proximityresponse)> | 是 | 取消注册接近光传感器的回调函数,上报的数据类型为ProximityResponse。 |
**示例:**
- ```js
- sensor.createRotationMatrix([-0.27775216, 0.5351276, 9.788099], [210.87253, -78.6096, -111.44444], function(err, data) {
- if (err) {
- console.error('error code is: ' + err.code + ', message: ' + err.message);
- return;
- }
- console.info(JSON.stringify(data));
- })
- ```
+```js
+function callback(data) {
+ console.info('Distance: ' + data.distance);
+}
+sensor.off(sensor.SensorType.SENSOR_TYPE_ID_PROXIMITY, callback);
+```
+### ROTATION_VECTOR(deprecated)
-## sensor.createRotationMatrix
+off(type: SensorType.SENSOR_TYPE_ID_ROTATION_VECTOR, callback?: Callback<RotationVectorResponse>): void
-createRotationMatrix(gravity: Array<number>, geomagnetic: Array<number>,): Promise<RotationMatrixResponse>
+取消订阅传感器数据。
-根据重力矢量和地磁矢量计算旋转矩阵。
+从API version 9 开始不再维护,建议使用[sensor.off.ROTATION_VECTOR](#rotation_vector9-2)代替。
**系统能力**:SystemCapability.Sensors.Sensor
**参数:**
-| 参数名 | 类型 | 必填 | 说明 |
-| ----------- | ------------------- | ---- | ------- |
-| gravity | Array<number> | 是 | 表示重力向量。 |
-| geomagnetic | Array<number> | 是 | 表示地磁矢量。 |
-
-**返回值:**
-
-| 类型 | 说明 |
-| ---------------------------------------- | ------- |
-| Promise<[RotationMatrixResponse](#rotationmatrixresponse)> | 返回旋转矩阵。 |
+| 参数名 | 类型 | 必填 | 说明 |
+| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
+| type | [SensorType](#sensortype) | 是 | 要取消订阅的旋转矢量传感器类型为SENSOR_TYPE_ID_ROTATION_VECTOR。 |
+| callback | Callback<[RotationVectorResponse](#rotationvectorresponse)> | 是 | 取消注册旋转矢量传感器的回调函数,上报的数据类型为RotationVectorResponse。 |
**示例:**
- ```js
- const promise = sensor.createRotationMatrix([-0.27775216, 0.5351276, 9.788099], [210.87253, -78.6096, -111.44444]);
- promise.then((data) => {
- console.info(JSON.stringify(data));
- }).catch((err) => {
- console.info('promise failed');
- })
- ```
+```js
+function callback(data) {
+ console.info('X-coordinate component: ' + data.x);
+ console.info('Y-coordinate component: ' + data.y);
+ console.info('Z-coordinate component: ' + data.z);
+ console.info('Scalar quantity: ' + data.w);
+}
+sensor.off(sensor.SensorType.SENSOR_TYPE_ID_ROTATION_VECTOR, callback);
+```
-## sensor.getSensorLists9+
+### SIGNIFICANT_MOTION(deprecated)
- getSensorLists(callback: AsyncCallback): void
+off(type: SensorType.SENSOR_TYPE_ID_SIGNIFICANT_MOTION, callback?: Callback<SignificantMotionResponse>): void
-获取设备上的所有传感器信息。
+取消订阅传感器数据。
+
+从API version 9 开始不再维护,建议使用[sensor.off.SIGNIFICANT_MOTION](#significant_motion9-2)代替。
**系统能力**:SystemCapability.Sensors.Sensor
**参数:**
-| 参数名 | 类型 | 必填 | 说明 |
-| -------- | ---------------------------------------------- | ---- | ---------------- |
-| callback | AsyncCallback | 是 | 返回传感器列表。 |
+| 参数名 | 类型 | 必填 | 说明 |
+| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
+| type | [SensorType](#sensortype) | 是 | 要取消订阅的大幅动作传感器类型为SENSOR_TYPE_ID_SIGNIFICANT_MOTION。 |
+| callback | Callback<[SignificantMotionResponse](#significantmotionresponse)> | 是 | 取消注册有效运动传感器的回调函数,上报的数据类型为SignificantMotionResponse。 |
**示例:**
```js
-sensor.getSensorLists((error, data) => {
- if (error) {
- console.error('getSensorLists failed');
- } else {
- console.info("getSensorLists callback in" + data.length);
- for (var i = 0; i < data.length; i++) {
- console.info("getSensorLists " + JSON.stringify(data[i]));
- }
- }
-});
+function callback(data) {
+ console.info('Scalar data: ' + data.scalar);
+}
+sensor.off(sensor.SensorType.SENSOR_TYPE_ID_SIGNIFICANT_MOTION, callback);
```
-## sensor.getSensorLists9+
+### WEAR_DETECTION(deprecated)
+
+off(type: SensorType.SENSOR_TYPE_ID_WEAR_DETECTION, callback?: Callback<WearDetectionResponse>): void
- getSensorLists(): Promise< Array<Sensor>>
+取消订阅传感器数据。
-获取设备上的所有传感器信息。
+从API version 9 开始不再维护,建议使用[sensor.off.WEAR_DETECTION](#wear_detection9-2)代替。
**系统能力**:SystemCapability.Sensors.Sensor
-**返回值:**
+**参数:**
-| 参数名 | 类型 | 必填 | 说明 |
-| ------- | ---------------------------------------- | ---- | ---------------- |
-| promise | Promise | 是 | 返回传感器列表。 |
+| 参数名 | 类型 | 必填 | 说明 |
+| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
+| type | [SensorType](#sensortype) | 是 | 要取消订阅的佩戴检测传感器类型为SENSOR_TYPE_ID_WEAR_DETECTION。 |
+| callback | Callback<[WearDetectionResponse](#weardetectionresponse)> | 是 | 取消注册佩戴检测传感器的回调函数,上报的数据类型为WearDetectionResponse。 |
**示例:**
```js
-sensor.getSensorLists().then((data) => {
- console.info("getSensorLists promise in" + data.length);
- for (var i = 0; i < data.length; i++) {
- console.info("getSensorLists " + JSON.stringify(data[i]));
- }
-}, (error)=>{
- console.error('getSensorLists failed');
-});
+function accCallback(data) {
+ console.info('Wear status: ' + data.value);
+}
+sensor.off(sensor.SensorType.SENSOR_TYPE_ID_WEAR_DETECTION, accCallback);
```
-## sensor.getSingleSensor9+
+## sensor.transformCoordinateSystem(deprecated)
+
+transformCoordinateSystem(inRotationVector: Array<number>, coordinates: CoordinatesOptions, callback: AsyncCallback<Array<number>>): void
-getSingleSensor(type: SensorType, callback: AsyncCallback<Sensor>): void
+旋转提供的旋转矩阵,使其可以以不同的方式表示坐标系。
-获取指定类型的传感器信息。
+从API version 9 开始不再维护,建议使用[sensor.transformRotationMatrix](#sensortransformrotationmatrix9)代替。
**系统能力**:SystemCapability.Sensors.Sensor
**参数:**
-| 参数名 | 类型 | 必填 | 说明 |
-| -------- | --------------------------------------- | ---- | ---------------- |
-| type | SensorType | 是 | 传感器类型。 |
-| callback | AsyncCallback<[Sensor](#sensor9)> | 是 | 返回传感器信息。 |
+| 参数名 | 类型 | 必填 | 说明 |
+| ---------------- | ---------------------------------------- | ---- | ----------- |
+| inRotationVector | Array<number> | 是 | 表示旋转矩阵。 |
+| coordinates | [CoordinatesOptions](#coordinatesoptions) | 是 | 表示坐标系方向。 |
+| callback | AsyncCallback<Array<number>> | 是 | 返回转换后的旋转矩阵。 |
-**示例:**
+**示例:**
```js
- sensor.getSingleSensor(sensor.SensorType.SENSOR_TYPE_ID_ACCELEROMETER, (error, data) => {
- if (error) {
- console.error('getSingleSensor failed');
- } else {
- console.info("getSingleSensor " + JSON.stringify(data));
- }
-});
+sensor.transformCoordinateSystem([1, 0, 0, 0, 1, 0, 0, 0, 1], {x:2, y:3}, function(err, data) {
+ if (err) {
+ console.error("Operation failed. Error code: " + err.code + ", message: " + err.message);
+ return;
+ }
+ console.info("Operation successed. Data obtained: " + data);
+ for (var i=0; i < data.length; i++) {
+ console.info("transformCoordinateSystem data[ " + i + "] = " + data[i]);
+ }
+ })
```
+## sensor.transformCoordinateSystem(deprecated)
-## sensor.getSingleSensor9+
+transformCoordinateSystem(inRotationVector: Array<number>, coordinates: CoordinatesOptions): Promise<Array<number>>
- getSingleSensor(type: SensorType): Promise<Sensor>
+旋转提供的旋转矩阵,使其可以以不同的方式表示坐标系。
-获取指定类型的传感器信息。
+从API version 9 开始不再维护,建议使用[sensor.transformRotationMatrix](#sensortransformrotationmatrix9-1)代替。
**系统能力**:SystemCapability.Sensors.Sensor
**参数:**
-| 参数名 | 类型 | 必填 | 说明 |
-| ------ | ---------- | ---- | ------------ |
-| type | SensorType | 是 | 传感器类型。 |
+| 参数名 | 类型 | 必填 | 说明 |
+| ---------------- | ---------------------------------------- | ---- | -------- |
+| inRotationVector | Array<number> | 是 | 表示旋转矩阵。 |
+| coordinates | [CoordinatesOptions](#coordinatesoptions) | 是 | 表示坐标系方向。 |
**返回值:**
-| 参数名 | 类型 | 必填 | 说明 |
-| ------- | --------------------------------- | ---- | ---------------- |
-| promise | Promise<[Sensor](#sensor9)> | 是 | 返回传感器信息。 |
+| 类型 | 说明 |
+| ---------------------------------- | ----------- |
+| Promise<Array<number>> | 返回转换后的旋转矩阵。 |
-**示例:**
+**示例:**
```js
-sensor.getSingleSensor(sensor.SensorType.SENSOR_TYPE_ID_ACCELEROMETER).then((data) => {
- console.info("getSingleSensor " + JSON.stringify(data));
-}, (error)=>{
- console.error('getSingleSensor failed');
-});
+const promise = sensor.transformCoordinateSystem([1, 0, 0, 0, 1, 0, 0, 0, 1], {x:2, y:3});
+ promise.then((data) => {
+ console.info("Operation successed.");
+ for (var i=0; i < data.length; i++) {
+ console.info("transformCoordinateSystem data[ " + i + "] = " + data[i]);
+ }
+ }).catch((err) => {
+ console.info("Operation failed");
+})
```
-## SensorType
+## sensor.getGeomagneticField(deprecated)
-表示要订阅或取消订阅的传感器类型。
+getGeomagneticField(locationOptions: LocationOptions, timeMillis: number, callback: AsyncCallback<GeomagneticResponse>): void
-**系统能力**:以下各项对应的系统能力均为SystemCapability.Sensors.Sensor
+获取地球上特定位置的地磁场。
+
+从API version 9 开始不再维护,建议使用[sensor.getGeomagneticInfo](#sensorgetgeomagneticinfo9)代替。
+**系统能力**:SystemCapability.Sensors.Sensor
-| 名称 | 默认值 | 说明 |
-| --------------------------------------------------------- | ------ | ---------------------- |
-| SENSOR_TYPE_ID_ACCELEROMETER | 1 | 加速度传感器。 |
-| SENSOR_TYPE_ID_GYROSCOPE | 2 | 陀螺仪传感器。 |
-| SENSOR_TYPE_ID_AMBIENT_LIGHT | 5 | 环境光传感器。 |
-| SENSOR_TYPE_ID_MAGNETIC_FIELD | 6 | 磁场传感器。 |
-| SENSOR_TYPE_ID_BAROMETER | 8 | 气压计传感器。 |
-| SENSOR_TYPE_ID_HALL | 10 | 霍尔传感器。 |
-| SENSOR_TYPE_ID_PROXIMITY | 12 | 接近光传感器。 |
-| SENSOR_TYPE_ID_HUMIDITY | 13 | 湿度传感器。 |
-| SENSOR_TYPE_ID_ORIENTATION | 256 | 方向传感器。 |
-| SENSOR_TYPE_ID_GRAVITY | 257 | 重力传感器。 |
-| SENSOR_TYPE_ID_LINEAR_ACCELERATION(deprecated) | 258 | 线性加速度传感器。 |
-| SENSOR_TYPE_ID_LINEAR_ACCELEROMETER9+ | 258 | 线性加速度传感器。 |
-| SENSOR_TYPE_ID_ROTATION_VECTOR | 259 | 旋转矢量传感器。 |
-| SENSOR_TYPE_ID_AMBIENT_TEMPERATURE | 260 | 环境温度传感器。 |
-| SENSOR_TYPE_ID_MAGNETIC_FIELD_UNCALIBRATED | 261 | 未校准磁场传感器。 |
-| SENSOR_TYPE_ID_GYROSCOPE_UNCALIBRATED | 263 | 未校准陀螺仪传感器。 |
-| SENSOR_TYPE_ID_SIGNIFICANT_MOTION | 264 | 有效运动传感器。 |
-| SENSOR_TYPE_ID_PEDOMETER_DETECTION | 265 | 计步检测传感器。 |
-| SENSOR_TYPE_ID_PEDOMETER | 266 | 计步传感器。 |
-| SENSOR_TYPE_ID_HEART_RATE(deprecated) | 278 | 心率传感器。 |
-| SENSOR_TYPE_ID_HEART_BEAT_RATE9+ | 278 | 心率传感器。 |
-| SENSOR_TYPE_ID_WEAR_DETECTION | 280 | 佩戴检测传感器。 |
-| SENSOR_TYPE_ID_ACCELEROMETER_UNCALIBRATED | 281 | 未校准加速度计传感器。 |
+**参数:**
+| 参数名 | 类型 | 必填 | 说明 |
+| --------------- | ------------------------------------------------------------ | ---- | ---------------------------------- |
+| locationOptions | [LocationOptions](#locationoptions) | 是 | 地理位置。 |
+| timeMillis | number | 是 | 表示获取磁偏角的时间,单位为毫秒。 |
+| callback | AsyncCallback<[GeomagneticResponse](#geomagneticresponse)> | 是 | 返回磁场信息。 |
-## Response
+**示例:**
+```js
+sensor.getGeomagneticField({latitude:80, longitude:0, altitude:0}, 1580486400000, function(err, data) {
+ if (err) {
+ console.error('Operation failed. Error code: ' + err.code + '; message: ' + err.message);
+ return;
+ }
+ console.info('sensor_getGeomagneticField_callback x: ' + data.x + ',y: ' + data.y + ',z: ' +
+ data.z + ',geomagneticDip: ' + data.geomagneticDip + ',deflectionAngle: ' + data.deflectionAngle +
+ ',levelIntensity: ' + data.levelIntensity + ',totalIntensity: ' + data.totalIntensity);
+});
+```
+## sensor.getGeomagneticField(deprecated)
-传感器数据的时间戳。
+getGeomagneticField(locationOptions: LocationOptions, timeMillis: number): Promise<GeomagneticResponse>
-**系统能力**:以下各项对应的系统能力均为SystemCapability.Sensors.Sensor
+获取地球上特定位置的地磁场。
-| 名称 | 参数类型 | 可读 | 可写 | 说明 |
-| --------- | -------- | ---- | ---- | ------------------------ |
-| timestamp | number | 是 | 是 | 传感器数据上报的时间戳。 |
+从API version 9 开始不再维护,建议使用[sensor.getGeomagneticInfo](#sensorgetgeomagneticinfo9-1)代替。
-## Sensor9+
+**系统能力**:SystemCapability.Sensors.Sensor
-指示传感器信息。
+**参数:**
-**系统能力**:以下各项对应的系统能力均为SystemCapability.Sensors.Sensor
+| 参数名 | 类型 | 必填 | 说明 |
+| --------------- | ----------------------------------- | ---- | ----------------- |
+| locationOptions | [LocationOptions](#locationoptions) | 是 | 地理位置。 |
+| timeMillis | number | 是 | 表示获取磁偏角的时间,单位为毫秒。 |
-| 名称 | 参数类型 | 说明 |
-| --------------- | -------- | ---------------------- |
-| sensorName | string | 传感器名称。 |
-| venderName | string | 传感器供应商。 |
-| firmwareVersion | string | 传感器固件版本。 |
-| hardwareVersion | string | 传感器硬件版本。 |
-| sensorTypeId | number | 传感器类型id。 |
-| maxRange | number | 传感器的最大测量范围。 |
-| precision | number | 传感器精度。 |
-| power | number | 传感器电源。 |
+**返回值:**
+| 类型 | 说明 |
+| ---------------------------------------- | ------- |
+| Promise<[GeomagneticResponse](#geomagneticresponse)> | 返回磁场信息。 |
-## AccelerometerResponse
+**示例:**
+ ```js
+ const promise = sensor.getGeomagneticField({latitude:80, longitude:0, altitude:0}, 1580486400000);
+ promise.then((data) => {
+ console.info('sensor_getGeomagneticField_promise x: ' + data.x + ',y: ' + data.y + ',z: ' +
+ data.z + ',geomagneticDip: ' + data.geomagneticDip + ',deflectionAngle: ' + data.deflectionAngle +
+ ',levelIntensity: ' + data.levelIntensity + ',totalIntensity: ' + data.totalIntensity);
+ }).catch((reason) => {
+ console.info('Operation failed.');
+ })
+ ```
-加速度传感器数据,继承于[Response](#response)。
+## sensor.getAltitude(deprecated)
-**系统能力**:以下各项对应的系统能力均为SystemCapability.Sensors.Sensor
+getAltitude(seaPressure: number, currentPressure: number, callback: AsyncCallback<number>): void
+根据气压值获取设备所在的海拔高度。
-| 名称 | 参数类型 | 可读 | 可写 | 说明 |
-| ---- | ------ | ---- | ---- | ---------------------- |
-| x | number | 是 | 是 | 施加在设备x轴的加速度,单位 : m/s2。 |
-| y | number | 是 | 是 | 施加在设备y轴的加速度,单位 : m/s2。 |
-| z | number | 是 | 是 | 施加在设备z轴的加速度,单位 : m/s2。 |
+从API version 9 开始不再维护,建议使用[sensor.getDeviceAltitude](#sensorgetdevicealtitude9)代替。
+**系统能力**:SystemCapability.Sensors.Sensor
-## LinearAccelerometerResponse
+**参数:**
-线性加速度传感器数据,继承于[Response](#response)。
+| 参数名 | 类型 | 必填 | 说明 |
+| --------------- | --------------------------- | ---- | -------------------- |
+| seaPressure | number | 是 | 表示海平面气压值,单位为hPa。 |
+| currentPressure | number | 是 | 表示设备所在高度的气压值,单位为hPa。 |
+| callback | AsyncCallback<number> | 是 | 返回设备所在的海拔高度,单位为米。 |
-**系统能力**:以下各项对应的系统能力均为SystemCapability.Sensors.Sensor
+**示例:**
+ ```js
+ sensor.getAltitude(0, 200, function(err, data) {
+ if (err) {
+ console.error(
+ "Operation failed. Error code: " + err.code + ", message: " + err.message);
+ return;
+ }
+ console.info("Successed to get getAltitude interface get data: " + data);
+ });
+ ```
-| 名称 | 参数类型 | 可读 | 可写 | 说明 |
-| ---- | ------ | ---- | ---- | ------------------------ |
-| x | number | 是 | 是 | 施加在设备x轴的线性加速度,单位 : m/s2。 |
-| y | number | 是 | 是 | 施加在设备y轴的线性加速度,单位 : m/s2。 |
-| z | number | 是 | 是 | 施加在设备z轴的线性加速度,单位 : m/s2。 |
+## sensor.getAltitude(deprecated)
+getAltitude(seaPressure: number, currentPressure: number): Promise<number>
-## AccelerometerUncalibratedResponse
+根据气压值获取设备所在的海拔高度。
-未校准加速度计传感器数据,继承于[Response](#response)。
+从API version 9 开始不再维护,建议使用[sensor.getDeviceAltitude](#sensorgetdevicealtitude9-1)代替。
-**系统能力**:以下各项对应的系统能力均为SystemCapability.Sensors.Sensor
+**系统能力**:SystemCapability.Sensors.Sensor
+**参数:**
-| 名称 | 参数类型 | 可读 | 可写 | 说明 |
-| ----- | ------ | ---- | ---- | ---------------------------- |
-| x | number | 是 | 是 | 施加在设备x轴未校准的加速度,单位 : m/s2。 |
-| y | number | 是 | 是 | 施加在设备y轴未校准的加速度,单位 : m/s2。 |
-| z | number | 是 | 是 | 施加在设备z轴未校准的加速度,单位 : m/s2。 |
-| biasX | number | 是 | 是 | 施加在设备x轴未校准的加速度偏量,单位 : m/s2。 |
-| biasY | number | 是 | 是 | 施加在设备上y轴未校准的加速度偏量,单位 : m/s2。 |
-| biasZ | number | 是 | 是 | 施加在设备z轴未校准的加速度偏量,单位 : m/s2。 |
+| 参数名 | 类型 | 必填 | 说明 |
+| --------------- | ------ | ---- | -------------------- |
+| seaPressure | number | 是 | 表示海平面气压值,单位为hPa。 |
+| currentPressure | number | 是 | 表示设备所在高度的气压值,单位为hPa。 |
+**返回值:**
-## GravityResponse
+| 类型 | 说明 |
+| --------------------- | ------------------ |
+| Promise<number> | 返回设备所在的海拔高度(单位:米)。 |
-重力传感器数据,继承于[Response](#response)。
+**示例:**
-**系统能力**:以下各项对应的系统能力均为SystemCapability.Sensors.Sensor
+ ```js
+ const promise = sensor.getAltitude(0, 200);
+ promise.then((data) => {
+ console.info(' sensor_getAltitude_Promise success', data);
+ }).catch((err) => {
+ console.error("Operation failed");
+ })
+ ```
-| 名称 | 参数类型 | 可读 | 可写 | 说明 |
-| ---- | ------ | ---- | ---- | ------------------------ |
-| x | number | 是 | 是 | 施加在设备x轴的重力加速度,单位 : m/s2。 |
-| y | number | 是 | 是 | 施加在设备y轴的重力加速度,单位 : m/s2。 |
-| z | number | 是 | 是 | 施加在设备z轴的重力加速度,单位 : m/s2。 |
+## sensor.getGeomagneticDip(deprecated)
+getGeomagneticDip(inclinationMatrix: Array<number>, callback: AsyncCallback<number>): void
-## OrientationResponse
+根据倾斜矩阵计算地磁倾斜角。
-方向传感器数据,继承于[Response](#response)。
+从API version 9 开始不再维护,建议使用[sensor.getInclination](#sensorgetinclination9)代替。
-**系统能力**:以下各项对应的系统能力均为SystemCapability.Sensors.Sensor
+**系统能力**:SystemCapability.Sensors.Sensor
+**参数:**
-| 名称 | 参数类型 | 可读 | 可写 | 说明 |
-| ----- | ------ | ---- | ---- | ----------------- |
-| alpha | number | 是 | 是 | 设备围绕Z轴的旋转角度,单位:度。 |
-| beta | number | 是 | 是 | 设备围绕X轴的旋转角度,单位:度。 |
-| gamma | number | 是 | 是 | 设备围绕Y轴的旋转角度,单位:度。 |
+| 参数名 | 类型 | 必填 | 说明 |
+| ----------------- | --------------------------- | ---- | -------------- |
+| inclinationMatrix | Array<number> | 是 | 表示倾斜矩阵。 |
+| callback | AsyncCallback<number> | 是 | 返回地磁倾斜角,单位为弧度。 |
+**示例:**
-## RotationVectorResponse
+ ```js
+ sensor.getGeomagneticDip([1, 0, 0, 0, 1, 0, 0, 0, 1], function(err, data) {
+ if (err) {
+ console.error('SensorJsAPI--->Failed to register data, error code is:' + err.code + ', message: ' +
+ err.message);
+ return;
+ }
+ console.info("Successed to get getGeomagneticDip interface get data: " + data);
+ })
+ ```
-旋转矢量传感器数据,继承于[Response](#response)。
+## sensor.getGeomagneticDip(deprecated)
-**系统能力**:以下各项对应的系统能力均为SystemCapability.Sensors.Sensor
+getGeomagneticDip(inclinationMatrix: Array<number>): Promise<number>
+根据倾斜矩阵计算地磁倾斜角。
-| 名称 | 参数类型 | 可读 | 可写 | 说明 |
-| ---- | ------ | ---- | ---- | --------- |
-| x | number | 是 | 是 | 旋转矢量x轴分量。 |
-| y | number | 是 | 是 | 旋转矢量y轴分量。 |
-| z | number | 是 | 是 | 旋转矢量z轴分量。 |
-| w | number | 是 | 是 | 标量。 |
+从API version 9 开始不再维护,建议使用[sensor.getInclination](#sensorgetinclination9-1)代替。
+**系统能力**:SystemCapability.Sensors.Sensor
-## GyroscopeResponse
+**参数:**
-陀螺仪传感器数据,继承于[Response](#response)。
+| 参数名 | 类型 | 必填 | 说明 |
+| ----------------- | ------------------- | ---- | ------- |
+| inclinationMatrix | Array<number> | 是 | 表示倾斜矩阵。 |
-**系统能力**:以下各项对应的系统能力均为SystemCapability.Sensors.Sensor
+**返回值:**
+
+| 类型 | 说明 |
+| --------------------- | -------------- |
+| Promise<number> | 返回地磁倾斜角,单位为弧度。 |
+
+**示例:**
+
+ ```js
+ const promise = sensor.getGeomagneticDip([1, 0, 0, 0, 1, 0, 0, 0, 1]);
+ promise.then((data) => {
+ console.info('getGeomagneticDip_promise successed', data);
+ }).catch((err) => {
+ console.error("Operation failed");
+ })
+ ```
+## sensor. getAngleModify(deprecated)
-| 名称 | 参数类型 | 可读 | 可写 | 说明 |
-| ---- | ------ | ---- | ---- | ------------------- |
-| x | number | 是 | 是 | 设备x轴的旋转角速度,单位rad/s。 |
-| y | number | 是 | 是 | 设备y轴的旋转角速度,单位rad/s。 |
-| z | number | 是 | 是 | 设备z轴的旋转角速度,单位rad/s。 |
+getAngleModify(currentRotationMatrix: Array<number>, preRotationMatrix: Array<number>, callback: AsyncCallback<Array<number>>): void
+获取两个旋转矩阵之间的角度变化。
-## GyroscopeUncalibratedResponse
+从API version 9 开始不再维护,建议使用[sensor.getAngleVariation](#sensorgetanglevariation9)代替。
-未校准陀螺仪传感器数据,继承于[Response](#response)。
+**系统能力**:SystemCapability.Sensors.Sensor
-**系统能力**:以下各项对应的系统能力均为SystemCapability.Sensors.Sensor
+**参数:**
+| 参数名 | 类型 | 必填 | 说明 |
+| --------------------- | ---------------------------------------- | ---- | ------------------ |
+| currentRotationMatrix | Array<number> | 是 | 表示当前旋转矩阵。 |
+| preRotationMatrix | Array<number> | 是 | 表示旋转矩阵。 |
+| callback | AsyncCallback<Array<number>> | 是 | 返回z、x、y轴方向的旋转角度变化。 |
-| 名称 | 参数类型 | 可读 | 可写 | 说明 |
-| ----- | ------ | ---- | ---- | ------------------------ |
-| x | number | 是 | 是 | 设备x轴未校准的旋转角速度,单位rad/s。 |
-| y | number | 是 | 是 | 设备y轴未校准的旋转角速度,单位rad/s。 |
-| z | number | 是 | 是 | 设备z轴未校准的旋转角速度,单位rad/s。 |
-| biasX | number | 是 | 是 | 设备x轴未校准的旋转角速度偏量,单位rad/s。 |
-| biasY | number | 是 | 是 | 设备y轴未校准的旋转角速度偏量,单位rad/s。 |
-| biasZ | number | 是 | 是 | 设备z轴未校准的旋转角速度偏量,单位rad/s。 |
+**示例:**
+ ```js
+ sensor. getAngleModify([1,0,0,0,1,0,0,0,1], [1, 0, 0, 0, 0.87, -0.50, 0, 0.50, 0.87], function(err, data) {
+ if (err) {
+ console.error('Failed to register data, error code is: ' + err.code + ', message: ' +
+ err.message);
+ return;
+ }
+ for (var i=0; i < data.length; i++) {
+ console.info("data[" + i + "]: " + data[i]);
+ }
+ })
+ ```
-## SignificantMotionResponse
-有效运动传感器数据,继承于[Response](#response)。
+## sensor. getAngleModify(deprecated)
-**系统能力**:以下各项对应的系统能力均为SystemCapability.Sensors.Sensor
+getAngleModify(currentRotationMatrix: Array<number>, preRotationMatrix: Array<number>): Promise<Array<number>>
+获取两个旋转矩阵之间的角度变化。
-| 名称 | 参数类型 | 可读 | 可写 | 说明 |
-| ------ | ------ | ---- | ---- | ---------------------------------------- |
-| scalar | number | 是 | 是 | 表示剧烈运动程度。测量三个物理轴(x、y 和 z)上,设备是否存在大幅度运动;如果取值为1则代表存在大幅度运动,取值为0则代表没有大幅度运动。 |
+从API version 9 开始不再维护,建议使用[sensor.getAngleVariation](#sensorgetanglevariation9-1)代替。
+**系统能力**:SystemCapability.Sensors.Sensor
-## ProximityResponse
+**参数:**
-接近光传感器数据,继承于[Response](#response)。
+| 参数名 | 类型 | 必填 | 说明 |
+| --------------------- | ------------------- | ---- | --------- |
+| currentRotationMatrix | Array<number> | 是 | 表示当前旋转矩阵。 |
+| preRotationMatrix | Array<number> | 是 | 表示旋转矩阵。 |
-**系统能力**:以下各项对应的系统能力均为SystemCapability.Sensors.Sensor
+**返回值:**
+| 类型 | 说明 |
+| ---------------------------------- | ------------------ |
+| Promise<Array<number>> | 返回z、x、y轴方向的旋转角度变化。 |
-| 名称 | 参数类型 | 可读 | 可写 | 说明 |
-| -------- | ------ | ---- | ---- | ---------------------------- |
-| distance | number | 是 | 是 | 可见物体与设备显示器的接近程度。0表示接近,1表示远离。 |
+**示例:**
+ ```js
+ const promise = sensor.getAngleModify([1,0,0,0,1,0,0,0,1], [1,0,0,0,0.87,-0.50,0,0.50,0.87]);
+ promise.then((data) => {
+ console.info('getAngleModifiy_promise success');
+ for (var i=0; i < data.length; i++) {
+ console.info("data[" + i + "]: " + data[i]);
+ }
+ }).catch((reason) => {
+ console.info("promise::catch", reason);
+ })
+ ```
-## LightResponse
-环境光传感器数据,继承于[Response](#response)。
+## sensor.createRotationMatrix(deprecated)
-**系统能力**:以下各项对应的系统能力均为SystemCapability.Sensors.Sensor
+createRotationMatrix(rotationVector: Array<number>, callback: AsyncCallback<Array<number>>): void
+将旋转矢量转换为旋转矩阵。
-| 名称 | 参数类型 | 可读 | 可写 | 说明 |
-| --------- | ------ | ---- | ---- | ----------- |
-| intensity | number | 是 | 是 | 光强(单位:勒克斯)。 |
+从API version 9 开始不再维护,建议使用[sensor.getRotationMatrix](#sensorgetrotationmatrix9)代替。
+**系统能力**:SystemCapability.Sensors.Sensor
-## HallResponse
+**参数:**
-霍尔传感器数据,继承于[Response](#response)。
+| 参数名 | 类型 | 必填 | 说明 |
+| -------------- | ---------------------------------------- | ---- | ------- |
+| rotationVector | Array<number> | 是 | 表示旋转矢量。 |
+| callback | AsyncCallback<Array<number>> | 是 | 返回旋转矩阵。 |
-**系统能力**:以下各项对应的系统能力均为SystemCapability.Sensors.Sensor
+**示例:**
+ ```js
+ sensor.createRotationMatrix([0.20046076, 0.21907, 0.73978853, 0.60376877], function(err, data) {
+ if (err) {
+ console.error('SensorJsAPI--->Failed to register data, error code is: ' + err.code + ', message: ' +
+ err.message);
+ return;
+ }
+ for (var i=0; i < data.length; i++) {
+ console.info("data[" + i + "]: " + data[i]);
+ }
+ })
+ ```
-| 名称 | 参数类型 | 可读 | 可写 | 说明 |
-| ------ | -------- | ---- | ---- | ------------------------------------------------------------ |
-| status | number | 是 | 是 | 显示霍尔状态。测量设备周围是否存在磁力吸引,0表示没有,大于0表示有。 |
+## sensor.createRotationMatrix(deprecated)
-## MagneticFieldResponse
+createRotationMatrix(rotationVector: Array<number>): Promise<Array<number>>
-磁场传感器数据,继承于[Response](#response)。
+将旋转矢量转换为旋转矩阵。
-**系统能力**:以下各项对应的系统能力均为SystemCapability.Sensors.Sensor
+从API version 9 开始不再维护,建议使用[sensor.getRotationMatrix](#sensorgetrotationmatrix9-1)代替。
+**系统能力**:SystemCapability.Sensors.Sensor
-| 名称 | 参数类型 | 可读 | 可写 | 说明 |
-| ---- | -------- | ---- | ---- | ---------------------------- |
-| x | number | 是 | 是 | x轴环境磁场强度,单位 : μT。 |
-| y | number | 是 | 是 | y轴环境磁场强度,单位 : μT。 |
-| z | number | 是 | 是 | z轴环境磁场强度,单位 : μT。 |
+**参数:**
+| 参数名 | 类型 | 必填 | 说明 |
+| -------------- | ------------------- | ---- | ------- |
+| rotationVector | Array<number> | 是 | 表示旋转矢量。 |
-## MagneticFieldUncalibratedResponse
+**返回值:**
-未校准磁场传感器数据,继承于[Response](#response)。
+| 类型 | 说明 |
+| ---------------------------------- | ------- |
+| Promise<Array<number>> | 返回旋转矩阵。 |
-**系统能力**:以下各项对应的系统能力均为SystemCapability.Sensors.Sensor
+**示例:**
+ ```js
+ const promise = sensor.createRotationMatrix([0.20046076, 0.21907, 0.73978853, 0.60376877]);
+ promise.then((data) => {
+ console.info('createRotationMatrix_promise success');
+ for (var i=0; i < data.length; i++) {
+ console.info("data[" + i + "]: " + data[i]);
+ }
+ }).catch((reason) => {
+ console.info("promise::catch", reason);
+ })
+ ```
-| 名称 | 参数类型 | 可读 | 可写 | 说明 |
-| ----- | ------ | ---- | ---- | ---------------------- |
-| x | number | 是 | 是 | x轴未校准环境磁场强度,单位 : μT。 |
-| y | number | 是 | 是 | y轴未校准环境磁场强度,单位 : μT。 |
-| z | number | 是 | 是 | z轴未校准环境磁场强度,单位 : μT。 |
-| biasX | number | 是 | 是 | x轴未校准环境磁场强度偏量,单位 : μT。 |
-| biasY | number | 是 | 是 | y轴未校准环境磁场强度偏量,单位 : μT。 |
-| biasZ | number | 是 | 是 | z轴未校准环境磁场强度偏量,单位 : μT。 |
+## sensor.createQuaternion(deprecated)
-## PedometerResponse
+createQuaternion(rotationVector: Array<number>, callback: AsyncCallback<Array<number>>): void
-计步传感器数据,继承于[Response](#response)。
+将旋转矢量转换为四元数。
-**系统能力**:以下各项对应的系统能力均为SystemCapability.Sensors.Sensor
+从API version 9 开始不再维护,建议使用[sensor.getQuaternion](#sensorgetquaternion9)代替。
+**系统能力**:SystemCapability.Sensors.Sensor
-| 名称 | 参数类型 | 可读 | 可写 | 说明 |
-| ----- | ------ | ---- | ---- | -------- |
-| steps | number | 是 | 是 | 用户的行走步数。 |
+**参数:**
+| 参数名 | 类型 | 必填 | 说明 |
+| -------------- | ---------------------------------------- | ---- | ------- |
+| rotationVector | Array<number> | 是 | 表示旋转矢量。 |
+| callback | AsyncCallback<Array<number>> | 是 | 返回四元数。 |
-## HumidityResponse
+**示例:**
-湿度传感器数据,继承于[Response](#response)。
+ ```js
+ sensor.createQuaternion([0.20046076, 0.21907, 0.73978853, 0.60376877], function(err, data) {
+ if (err) {
+ console.error('SensorJsAPI--->Failed to register data, error code is: ' + err.code + ', message: ' +
+ err.message);
+ return;
+ }
+ for (var i=0; i < data.length; i++) {
+ console.info("data[" + i + "]: " + data[i]);
+ }
+ })
+ ```
-**系统能力**:以下各项对应的系统能力均为SystemCapability.Sensors.Sensor
+## sensor.createQuaternion(deprecated)
-| 名称 | 参数类型 | 可读 | 可写 | 说明 |
-| -------- | ------ | ---- | ---- | ------------------------------------ |
-| humidity | number | 是 | 是 | 湿度值。测量环境的相对湿度,以百分比 (%) 表示。 |
+createQuaternion(rotationVector: Array<number>): Promise<Array<number>>
+将旋转矢量转换为四元数。
-## PedometerDetectionResponse
+从API version 9 开始不再维护,建议使用[sensor.getQuaternion](#sensorgetquaternion9-1)代替。
-计步检测传感器数据,继承于[Response](#response)。
+**系统能力**:SystemCapability.Sensors.Sensor
-**系统能力**:以下各项对应的系统能力均为SystemCapability.Sensors.Sensor
+**参数:**
+| 参数名 | 类型 | 必填 | 说明 |
+| -------------- | ------------------- | ---- | ------- |
+| rotationVector | Array<number> | 是 | 表示旋转矢量。 |
-| 名称 | 参数类型 | 可读 | 可写 | 说明 |
-| ------ | ------ | ---- | ---- | ---------------------------------------- |
-| scalar | number | 是 | 是 | 计步器检测。检测用户的计步动作,如果取值为1则代表用户产生了计步行走的动作,取值为0则代表用户没有发生运动。 |
+**返回值:**
+| 类型 | 说明 |
+| ---------------------------------- | ------ |
+| Promise<Array<number>> | 返回四元数。 |
-## AmbientTemperatureResponse
+**示例:**
-温度传感器数据,继承于[Response](#response)。
+ ```js
+ const promise = sensor.createQuaternion([0.20046076, 0.21907, 0.73978853, 0.60376877]);
+ promise.then((data) => {
+ console.info('createQuaternion_promise successed');
+ for (var i=0; i < data.length; i++) {
+ console.info("data[" + i + "]: " + data[i]);
+ }
+ }).catch((err) => {
+ console.info('promise failed');
+ })
+ ```
-**系统能力**:以下各项对应的系统能力均为SystemCapability.Sensors.Sensor
+## sensor.getDirection(deprecated)
-| 名称 | 参数类型 | 可读 | 可写 | 说明 |
-| ----------- | ------ | ---- | ---- | ------------- |
-| temperature | number | 是 | 是 | 环境温度(单位:摄氏度)。 |
+getDirection(rotationMatrix: Array<number>, callback: AsyncCallback<Array<number>>): void
+根据旋转矩阵计算设备的方向。
-## BarometerResponse
+从API version 9 开始不再维护,建议使用[sensor.getOrientation](#sensorgetorientation9)代替。
-气压计传感器数据,继承于[Response](#response)。
+**系统能力**:SystemCapability.Sensors.Sensor
-**系统能力**:以下各项对应的系统能力均为SystemCapability.Sensors.Sensor
+**参数:**
+| 参数名 | 类型 | 必填 | 说明 |
+| -------------- | ---------------------------------------- | ---- | ------------------ |
+| rotationMatrix | Array<number> | 是 | 表示旋转矩阵。 |
+| callback | AsyncCallback<Array<number>> | 是 | 返回围绕z、x、y轴方向的旋转角度。 |
-| 名称 | 参数类型 | 可读 | 可写 | 说明 |
-| -------- | ------ | ---- | ---- | ------------ |
-| pressure | number | 是 | 是 | 压力值(单位:帕斯卡)。 |
+**示例:**
+ ```js
+ sensor.getDirection([1, 0, 0, 0, 1, 0, 0, 0, 1], function(err, data) {
+ if (err) {
+ console.error('SensorJsAPI--->Failed to register data, error code is: ' + err.code + ', message: ' +
+ err.message);
+ return;
+ }
+ console.info("SensorJsAPI--->Successed to get getDirection interface get data: " + data);
+ for (var i = 1; i < data.length; i++) {
+ console.info("sensor_getDirection_callback" + data[i]);
+ }
+ })
+ ```
-## HeartRateResponse
-心率传感器数据,继承于[Response](#response)。
+## sensor.getDirection(deprecated)
-**系统能力**:以下各项对应的系统能力均为SystemCapability.Sensors.Sensor
+getDirection(rotationMatrix: Array<number>): Promise<Array<number>>
+根据旋转矩阵计算设备的方向。
-| 名称 | 参数类型 | 可读 | 可写 | 说明 |
-| --------- | ------ | ---- | ---- | --------------------- |
-| heartRate | number | 是 | 是 | 心率值。测量用户的心率数值,单位:bpm。 |
+从API version 9 开始不再维护,建议使用[sensor.getOrientation](#sensorgetorientation9-1)代替。
+**系统能力**:SystemCapability.Sensors.Sensor
-## WearDetectionResponse
+**参数:**
-佩戴检测传感器数据,继承于[Response](#response)。
+| 参数名 | 类型 | 必填 | 说明 |
+| -------------- | ------------------- | ---- | ------- |
+| rotationMatrix | Array<number> | 是 | 表示旋转矩阵。 |
-**系统能力**:以下各项对应的系统能力均为SystemCapability.Sensors.Sensor
+**返回值:**
+| 类型 | 说明 |
+| ---------------------------------- | ------------------ |
+| Promise<Array<number>> | 返回围绕z、x、y轴方向的旋转角度。 |
-| 名称 | 参数类型 | 可读 | 可写 | 说明 |
-| ----- | ------ | ---- | ---- | ------------------------- |
-| value | number | 是 | 是 | 表示设备是否被穿戴(1表示已穿戴,0表示未穿戴)。 |
+**示例:**
+ ```js
+ const promise = sensor.getDirection([1, 0, 0, 0, 1, 0, 0, 0, 1]);
+ promise.then((data) => {
+ console.info('sensor_getAltitude_Promise success', data);
+ for (var i = 1; i < data.length; i++) {
+ console.info("sensor_getDirection_promise" + data[i]);
+ }
+ }).catch((err) => {
+ console.info('promise failed');
+ })
+ ```
-## Options
-设置传感器上报频率。
+## sensor.createRotationMatrix(deprecated)
-**系统能力**:以下各项对应的系统能力均为SystemCapability.Sensors.Sensor
+createRotationMatrix(gravity: Array<number>, geomagnetic: Array<number>, callback: AsyncCallback<RotationMatrixResponse>): void
-| 名称 | 参数类型 | 说明 |
-| -------- | ------ | --------------------------- |
-| interval | number | 表示传感器的上报频率,默认值为200000000ns。 |
+根据重力矢量和地磁矢量计算旋转矩阵。
-## RotationMatrixResponse
+从API version 9 开始不再维护,建议使用[sensor.getRotationMatrix](#sensorgetrotationmatrix9-2)代替。
-设置旋转矩阵响应对象。
+**系统能力**:SystemCapability.Sensors.Sensor
-**系统能力**:以下各项对应的系统能力均为SystemCapability.Sensors.Sensor
+**参数:**
-| 名称 | 参数类型 | 可读 | 可写 | 说明 |
-| ----------- | ------------------- | ---- | ---- | ----- |
-| rotation | Array<number> | 是 | 是 | 旋转矩阵。 |
-| inclination | Array<number> | 是 | 是 | 倾斜矩阵。 |
+| 参数名 | 类型 | 必填 | 说明 |
+| ----------- | ---------------------------------------- | ---- | ------- |
+| gravity | Array<number> | 是 | 表示重力向量。 |
+| geomagnetic | Array<number> | 是 | 表示地磁矢量。 |
+| callback | AsyncCallback<[RotationMatrixResponse](#rotationmatrixresponse)> | 是 | 返回旋转矩阵。 |
+**示例:**
-## CoordinatesOptions
+ ```js
+ sensor.createRotationMatrix([-0.27775216, 0.5351276, 9.788099], [210.87253, -78.6096, -111.44444], function(err, data) {
+ if (err) {
+ console.error('error code is: ' + err.code + ', message: ' + err.message);
+ return;
+ }
+ console.info(JSON.stringify(data));
+ })
+ ```
-设置坐标选项对象。
-**系统能力**:以下各项对应的系统能力均为SystemCapability.Sensors.Sensor
+## sensor.createRotationMatrix(deprecated)
-| 名称 | 参数类型 | 可读 | 可写 | 说明 |
-| ---- | ------ | ---- | ---- | ------ |
-| x | number | 是 | 是 | x坐标方向。 |
-| y | number | 是 | 是 | y坐标方向。 |
+createRotationMatrix(gravity: Array<number>, geomagnetic: Array<number>,): Promise<RotationMatrixResponse>
+根据重力矢量和地磁矢量计算旋转矩阵。
-## GeomagneticResponse
+从API version 9 开始不再维护,建议使用[sensor.getRotationMatrix](#sensorgetrotationmatrix9-3)代替。
-设置地磁响应对象,继承于[Response](#response)。
+**系统能力**:SystemCapability.Sensors.Sensor
-**系统能力**:以下各项对应的系统能力均为SystemCapability.Sensors.Sensor
+**参数:**
-| 名称 | 参数类型 | 可读 | 可写 | 说明 |
-| --------------- | ------ | ---- | ---- | ------------------------- |
-| x | number | 是 | 是 | 地磁场的北分量。 |
-| y | number | 是 | 是 | 地磁场的东分量。 |
-| z | number | 是 | 是 | 地磁场的垂直分量。 |
-| geomagneticDip | number | 是 | 是 | 地磁倾角,即地球磁场线与水平面的夹角。 |
-| deflectionAngle | number | 是 | 是 | 地磁偏角,即地磁北方向与正北方向在水平面上的角度。 |
-| levelIntensity | number | 是 | 是 | 地磁场的水平强度。 |
-| totalIntensity | number | 是 | 是 | 地磁场的总强度。 |
+| 参数名 | 类型 | 必填 | 说明 |
+| ----------- | ------------------- | ---- | ------- |
+| gravity | Array<number> | 是 | 表示重力向量。 |
+| geomagnetic | Array<number> | 是 | 表示地磁矢量。 |
-## LocationOptions
+**返回值:**
-指示地理位置。
+| 类型 | 说明 |
+| ---------------------------------------- | ------- |
+| Promise<[RotationMatrixResponse](#rotationmatrixresponse)> | 返回旋转矩阵。 |
-**系统能力**:以下各项对应的系统能力均为SystemCapability.Sensors.Sensor
+**示例:**
-| 名称 | 参数类型 | 可读 | 可写 | 说明 |
-| --------- | ------ | ---- | ---- | ----- |
-| latitude | number | 是 | 是 | 纬度。 |
-| longitude | number | 是 | 是 | 经度。 |
-| altitude | number | 是 | 是 | 海拔高度。 |
+ ```js
+ const promise = sensor.createRotationMatrix([-0.27775216, 0.5351276, 9.788099], [210.87253, -78.6096, -111.44444]);
+ promise.then((data) => {
+ console.info(JSON.stringify(data));
+ }).catch((err) => {
+ console.info('promise failed');
+ })
+ ```
diff --git a/zh-cn/application-dev/reference/apis/js-apis-system-notification.md b/zh-cn/application-dev/reference/apis/js-apis-system-notification.md
index 54fa874345392ddeeedfd19d9921dfe2530a974f..bef54aaed7b8ead58709274e07a9b43de6bd4fa5 100644
--- a/zh-cn/application-dev/reference/apis/js-apis-system-notification.md
+++ b/zh-cn/application-dev/reference/apis/js-apis-system-notification.md
@@ -51,18 +51,17 @@ show(options?: ShowNotificationOptions): void
**示例:**
```javascript
-export default {
- show() {
- notification.show({
- contentTitle: 'title info',
- contentText: 'text',
- clickAction: {
- bundleName: 'com.example.testapp',
- abilityName: 'notificationDemo',
- uri: '/path/to/notification',
- },
- });
- },
+export default {
+ show() {
+ notification.show({
+ contentTitle: 'title info',
+ contentText: 'text',
+ clickAction: {
+ bundleName: 'com.example.testapp',
+ abilityName: 'notificationDemo',
+ uri: '/path/to/notification',
+ },
+ });
+ },
}
-;
```
\ No newline at end of file
diff --git a/zh-cn/application-dev/reference/apis/js-apis-uitest.md b/zh-cn/application-dev/reference/apis/js-apis-uitest.md
index 3b1df63fcc4bcb7d8ab3cebc929da49eef18eeee..0e824de04cfa4dd1de206838d519ace19d934ce2 100644
--- a/zh-cn/application-dev/reference/apis/js-apis-uitest.md
+++ b/zh-cn/application-dev/reference/apis/js-apis-uitest.md
@@ -39,16 +39,16 @@ text(txt: string, pattern?: MatchPattern): By
**参数:**
-| 参数名 | 类型 | 必填 | 说明 |
-| ------- | ------------ | ---- | ------------------------------------------------- |
-| txt | string | 是 | 指定控件文本,用于匹配目标控件文本。 |
-| pattern | MatchPattern | 否 | 指定的文本匹配模式,默认为[EQUALS](#matchpattern) |
+| 参数名 | 类型 | 必填 | 说明 |
+| ------- | ------------ | ---- | --------------------------------------------------- |
+| txt | string | 是 | 指定控件文本,用于匹配目标控件文本。 |
+| pattern | MatchPattern | 否 | 指定的文本匹配模式,默认为[EQUALS](#matchpattern)。 |
**返回值:**
-| 类型 | 说明 |
-| ---- | -------------- |
-| By | 返回By对象自身 |
+| 类型 | 说明 |
+| --------- | ---------------------------------- |
+| [By](#by) | 返回指定目标控件文本属性的By对象。 |
**示例:**
@@ -73,9 +73,9 @@ key(key: string): By
**返回值:**
-| 类型 | 说明 |
-| ---- | ---------------- |
-| By | 返回By对象自身。 |
+| 类型 | 说明 |
+| --------- | ----------------------------------- |
+| [By](#by) | 返回指定目标控件key值属性的By对象。 |
**示例:**
@@ -100,9 +100,9 @@ id(id: number): By
**返回值:**
-| 类型 | 说明 |
-| ---- | ---------------- |
-| By | 返回By对象自身。 |
+| 类型 | 说明 |
+| --------- | -------------------------------- |
+| [By](#by) | 返回指定目标控件id属性的By对象。 |
**示例:**
@@ -127,9 +127,9 @@ type(tp: string): By
**返回值:**
-| 类型 | 说明 |
-| ---- | ---------------- |
-| By | 返回By对象自身。 |
+| 类型 | 说明 |
+| --------- | ---------------------------------------- |
+| [By](#by) | 返回指定目标控件的控件类型属性的By对象。 |
**示例:**
@@ -150,13 +150,13 @@ clickable(b?: boolean): By
| 参数名 | 类型 | 必填 | 说明 |
| ------ | ---- | ---- | -------------------------------- |
-| b | boolean | 否 | 指定控件可点击状态,默认为true。 |
+| b | boolean | 否 | 指定控件可点击状态,true:可点击,false:不可点击。默认为true。 |
**返回值:**
-| 类型 | 说明 |
-| ---- | ---------------- |
-| By | 返回By对象自身。 |
+| 类型 | 说明 |
+| --------- | ------------------------------------------ |
+| [By](#by) | 返回指定目标控件的可点击状态属性的By对象。 |
**示例:**
@@ -176,13 +176,13 @@ longClickable(b?: boolean): By
| 参数名 | 类型 | 必填 | 说明 |
| ------ | ---- | ---- | ------------------------------------ |
-| b | boolean | 否 | 指定控件可长按点击状态,默认为true。 |
+| b | boolean | 否 | 指定控件可长按点击状态,true:可长按点击,false:不可长按点击。默认为true。 |
**返回值:**
-| 类型 | 说明 |
-| ---- | ---------------- |
-| By | 返回By对象自身。 |
+| 类型 | 说明 |
+| --------- | ---------------------------------------------- |
+| [By](#by) | 返回指定目标控件的可长按点击状态属性的By对象。 |
**示例:**
@@ -203,13 +203,13 @@ scrollable(b?: boolean): By
| 参数名 | 类型 | 必填 | 说明 |
| ------ | ---- | ---- | ---------------------------- |
-| b | boolean | 否 | 控件可滑动状态,默认为true。 |
+| b | boolean | 否 | 控件可滑动状态,true:可滑动,false:不可滑动。默认为true。 |
**返回值:**
-| 类型 | 说明 |
-| ---- | ---------------- |
-| By | 返回By对象自身。 |
+| 类型 | 说明 |
+| --------- | ------------------------------------------ |
+| [By](#by) | 返回指定目标控件的可滑动状态属性的By对象。 |
**示例:**
@@ -229,13 +229,13 @@ enabled(b?: boolean): By
| 参数名 | 类型 | 必填 | 说明 |
| ------ | ---- | ---- | ------------------------------ |
-| b | boolean | 否 | 指定控件使能状态,默认为true。 |
+| b | boolean | 否 | 指定控件使能状态,true:使能,false:未使能。默认为true。 |
**返回值:**
-| 类型 | 说明 |
-| ---- | ---------------- |
-| By | 返回By对象自身。 |
+| 类型 | 说明 |
+| --------- | ---------------------------------------- |
+| [By](#by) | 返回指定目标控件的使能状态属性的By对象。 |
**示例:**
@@ -255,13 +255,13 @@ focused(b?: boolean): By
| 参数名 | 类型 | 必填 | 说明 |
| ------ | ---- | ---- | -------------------------- |
-| b | boolean | 否 | 控件获焦状态,默认为true。 |
+| b | boolean | 否 | 控件获焦状态,true:获焦,false:未获焦。默认为true。 |
**返回值:**
-| 类型 | 说明 |
-| ---- | ---------------- |
-| By | 返回By对象自身。 |
+| 类型 | 说明 |
+| --------- | ---------------------------------------- |
+| [By](#by) | 返回指定目标控件的获焦状态属性的By对象。 |
**示例:**
@@ -281,13 +281,13 @@ selected(b?: boolean): By
| 参数名 | 类型 | 必填 | 说明 |
| ------ | ---- | ---- | -------------------------------- |
-| b | boolean | 否 | 指定控件被选中状态,默认为true。 |
+| b | boolean | 否 | 指定控件被选中状态,true:被选中,false:未被选中。默认为true。 |
**返回值:**
-| 类型 | 说明 |
-| ---- | ---------------- |
-| By | 返回By对象自身。 |
+| 类型 | 说明 |
+| --------- | ------------------------------------------ |
+| [By](#by) | 返回指定目标控件的被选中状态属性的By对象。 |
**示例:**
@@ -307,13 +307,13 @@ checked(b?: boolean): By
| 参数名 | 类型 | 必填 | 说明 |
| ------ | ---- | ---- | --------------------------------- |
-| b | boolean | 否 | 指定控件被勾选状态,默认为false。 |
+| b | boolean | 否 | 指定控件被勾选状态,true:被勾选,false:未被勾选。默认为false。 |
**返回值:**
-| 类型 | 说明 |
-| ---- | -------------- |
-| By | 返回By对象自身 |
+| 类型 | 说明 |
+| --------- | ------------------------------------------ |
+| [By](#by) | 返回指定目标控件的被勾选状态属性的By对象。 |
**示例:**
@@ -333,13 +333,13 @@ checkable(b?: boolean): By
| 参数名 | 类型 | 必填 | 说明 |
| ------ | ---- | ---- | ------------------------------------- |
-| b | boolean | 否 | 指定控件能否被勾选状态,默认为false。 |
+| b | boolean | 否 | 指定控件能否被勾选状态,true:能被勾选,false:不能被勾选。默认为false。 |
**返回值:**
-| 类型 | 说明 |
-| ---- | ---------------- |
-| By | 返回By对象自身。 |
+| 类型 | 说明 |
+| --------- | -------------------------------------------- |
+| [By](#by) | 返回指定目标控件能否被勾选状态属性的By对象。 |
**示例:**
@@ -357,15 +357,15 @@ isBefore(by: By): By
**参数:**
-| 参数名 | 类型 | 必填 | 说明 |
-| ------ | ---- | ---- | ---------------- |
-| by | By | 是 | 特征控件的属性。 |
+| 参数名 | 类型 | 必填 | 说明 |
+| ------ | --------- | ---- | ---------------- |
+| by | [By](#by) | 是 | 特征控件的属性。 |
**返回值:**
-| 类型 | 说明 |
-| ---- | ---------------- |
-| By | 返回By对象自身。 |
+| 类型 | 说明 |
+| --------- | ---------------------------------------------------- |
+| [By](#by) | 返回指定目标控件位于给出的特征属性控件之前的By对象。 |
**示例:**
@@ -383,15 +383,15 @@ isAfter(by: By): By
**参数:**
-| 参数名 | 类型 | 必填 | 说明 |
-| ------ | ---- | ---- | ---------------- |
-| by | By | 是 | 特征控件的属性。 |
+| 参数名 | 类型 | 必填 | 说明 |
+| ------ | --------- | ---- | ---------------- |
+| by | [By](#by) | 是 | 特征控件的属性。 |
**返回值:**
-| 类型 | 说明 |
-| ---- | ---------------- |
-| By | 返回By对象自身。 |
+| 类型 | 说明 |
+| --------- | ---------------------------------------------------- |
+| [By](#by) | 返回指定目标控件位于给出的特征属性控件之后的By对象。 |
**示例:**
@@ -588,9 +588,9 @@ getBounds(): Promise\
**返回值:**
-| 类型 | 说明 |
-| -------------- | ------------------------------------- |
-| Promise\ | 以Promise形式返回控件对象的边框信息。 |
+| 类型 | 说明 |
+| ------------------------ | ------------------------------------- |
+| Promise\<[Rect](#rect9)> | 以Promise形式返回控件对象的边框信息。 |
**示例:**
@@ -612,9 +612,9 @@ getBoundsCenter(): Promise\
**返回值:**
-| 类型 | 说明 |
-| --------------- | --------------------------------------- |
-| Promise\ | 以Promise形式返回控件对象的中心点信息。 |
+| 类型 | 说明 |
+| -------------------------- | --------------------------------------- |
+| Promise\<[Point](#point9)> | 以Promise形式返回控件对象的中心点信息。 |
**示例:**
@@ -638,7 +638,7 @@ isClickable(): Promise\
| 类型 | 说明 |
| -------------- | ------------------------------------- |
-| Promise\ | 以Promise形式返回控件对象可点击状态。 |
+| Promise\ | 以Promise形式返回控件对象可点击状态,true:可点击,false:不可点击。 |
**示例:**
@@ -667,7 +667,7 @@ isLongClickable(): Promise\
| 类型 | 说明 |
| -------------- | ------------------------------------------- |
-| Promise\ | 以Promise形式返回控件对象能否长按点击状态。 |
+| Promise\ | 以Promise形式返回控件对象能否长按点击状态,true:可长按点击,false:不可长按点击。 |
**示例:**
@@ -696,7 +696,7 @@ isChecked(): Promise\
| 类型 | 说明 |
| -------------- | ------------------------------------- |
-| Promise\ | 以Promise形式返回控件对象被勾选状态。 |
+| Promise\ | 以Promise形式返回控件对象被勾选状态,true:被勾选,false:未被勾选。 |
**示例:**
@@ -725,7 +725,7 @@ isCheckable(): Promise\
| 类型 | 说明 |
| -------------- | ------------------------------------------- |
-| Promise\ | 以Promise形式返回控件对象能否被勾选的属性。 |
+| Promise\ | 以Promise形式返回控件对象能否被勾选的属性,true:可被勾选,false:不可被勾选。 |
**示例:**
@@ -754,7 +754,7 @@ isScrollable(): Promise\
| 类型 | 说明 |
| -------------- | ------------------------------------- |
-| Promise\ | 以Promise形式返回控件对象可滑动状态。 |
+| Promise\ | 以Promise形式返回控件对象可滑动状态,true:可滑动,false:不可滑动。 |
**示例:**
@@ -784,7 +784,7 @@ isEnabled(): Promise\
| 类型 | 说明 |
| -------------- | ------------------------------- |
-| Promise\ | 以Promise形式返回控件使能状态。 |
+| Promise\ | 以Promise形式返回控件使能状态,true:使能,false:未使能。 |
**示例:**
@@ -814,7 +814,7 @@ isFocused(): Promise\
| 类型 | 说明 |
| -------------- | ----------------------------------- |
-| Promise\ | 以Promise形式返回控件对象是否获焦。 |
+| Promise\ | 以Promise形式返回控件对象是否获焦,true:获焦,false:未获焦。 |
**示例:**
@@ -843,7 +843,7 @@ isSelected(): Promise\
| 类型 | 说明 |
| -------------- | -------------------- |
-| Promise\ | 控件对象被选中的状态 |
+| Promise\ | 控件对象被选中的状态,true:被选中,false:未被选中。 |
**示例:**
@@ -912,15 +912,15 @@ scrollSearch(by: By): Promise\
**参数:**
-| 参数名 | 类型 | 必填 | 说明 |
-| ------ | ---- | ---- | -------------------- |
-| by | By | 是 | 目标控件的属性要求。 |
+| 参数名 | 类型 | 必填 | 说明 |
+| ------ | --------- | ---- | -------------------- |
+| by | [By](#by) | 是 | 目标控件的属性要求。 |
**返回值:**
-| 类型 | 说明 |
-| --------------------- | ------------------------------------- |
-| Promise\ | 以Promise形式返回找到的目标控件对象。 |
+| 类型 | 说明 |
+| ------------------------------------- | ------------------------------------- |
+| Promise\<[UiComponent](#uicomponent)> | 以Promise形式返回找到的目标控件对象。 |
**示例:**
@@ -990,9 +990,9 @@ dragTo(target: UiComponent): Promise\
**参数:**
-| 参数名 | 类型 | 必填 | 说明 |
-| ------ | ----------- | ---- | ---------- |
-| target | UiComponent | 是 | 目标控件。 |
+| 参数名 | 类型 | 必填 | 说明 |
+| ------ | --------------------------- | ---- | ---------- |
+| target | [UiComponent](#uicomponent) | 是 | 目标控件。 |
**示例:**
@@ -1015,9 +1015,9 @@ pinchOut(scale: number): Promise\
**参数:**
-| 参数名 | 类型 | 必填 | 说明 |
-| ------ | ----------- | ---- | ---------- |
-| scale | number | 是 | 指定比例 |
+| 参数名 | 类型 | 必填 | 说明 |
+| ------ | ------ | ---- | ---------------- |
+| scale | number | 是 | 指定放大的比例。 |
**示例:**
@@ -1039,9 +1039,9 @@ pinchIn(scale: number): Promise\
**参数:**
-| 参数名 | 类型 | 必填 | 说明 |
-| ------ | ----------- | ---- | ---------- |
-| scale | number | 是 | 指定比例 |
+| 参数名 | 类型 | 必填 | 说明 |
+| ------ | ------ | ---- | ---------------- |
+| scale | number | 是 | 指定缩小的比例。 |
**示例:**
@@ -1113,15 +1113,15 @@ findComponent(by: By): Promise\
**参数:**
-| 参数名 | 类型 | 必填 | 说明 |
-| ------ | ---- | ---- | -------------------- |
-| by | By | 是 | 目标控件的属性要求。 |
+| 参数名 | 类型 | 必填 | 说明 |
+| ------ | --------- | ---- | -------------------- |
+| by | [By](#by) | 是 | 目标控件的属性要求。 |
**返回值:**
-| 类型 | 说明 |
-| --------------------- | --------------------------------- |
-| Promise\ | 以Promise形式返回找到的控件对象。 |
+| 类型 | 说明 |
+| ------------------------------------- | --------------------------------- |
+| Promise\<[UiComponent](#uicomponent)> | 以Promise形式返回找到的控件对象。 |
**示例:**
@@ -1142,15 +1142,15 @@ findComponents(by: By): Promise\>
**参数:**
-| 参数名 | 类型 | 必填 | 说明 |
-| ------ | ---- | ---- | -------------------- |
-| by | By | 是 | 目标控件的属性要求。 |
+| 参数名 | 类型 | 必填 | 说明 |
+| ------ | --------- | ---- | -------------------- |
+| by | [By](#by) | 是 | 目标控件的属性要求。 |
**返回值:**
-| 类型 | 说明 |
-| ----------------------------- | --------------------------------------- |
-| Promise\> | 以Promise形式返回找到的控件对象的列表。 |
+| 类型 | 说明 |
+| --------------------------------------------- | --------------------------------------- |
+| Promise\> | 以Promise形式返回找到的控件对象的列表。 |
**示例:**
@@ -1200,16 +1200,16 @@ waitForComponent(by: By, time: number): Promise\
**参数:**
-| 参数名 | 类型 | 必填 | 说明 |
-| ------ | ------ | ---- | -------------------------------- |
-| by | By | 是 | 目标控件的属性要求。 |
-| time | number | 是 | 查找目标控件的持续时间。单位ms。 |
+| 参数名 | 类型 | 必填 | 说明 |
+| ------ | --------- | ---- | -------------------------------- |
+| by | [By](#by) | 是 | 目标控件的属性要求。 |
+| time | number | 是 | 查找目标控件的持续时间。单位ms。 |
**返回值:**
-| 类型 | 说明 |
-| --------------------- | --------------------------------- |
-| Promise\ | 以Promise形式返回找到的控件对象。 |
+| 类型 | 说明 |
+| ------------------------------------- | --------------------------------- |
+| Promise\<[UiComponent](#uicomponent)> | 以Promise形式返回找到的控件对象。 |
**示例:**
@@ -1230,9 +1230,9 @@ assertComponentExist(by: By): Promise\
**参数:**
-| 参数名 | 类型 | 必填 | 说明 |
-| ------ | ---- | ---- | -------------------- |
-| by | By | 是 | 目标控件的属性要求。 |
+| 参数名 | 类型 | 必填 | 说明 |
+| ------ | --------- | ---- | -------------------- |
+| by | [By](#by) | 是 | 目标控件的属性要求。 |
**示例:**
@@ -1522,7 +1522,7 @@ setDisplayRotationEnabled(enabled: boolean): Promise\
| 参数名 | 类型 | 必填 | 说明 |
| ------- | ---- | ---- | -------------------- |
-| enabled | boolean | 是 | 能否旋转屏幕的标识。 |
+| enabled | boolean | 是 | 能否旋转屏幕的标识,true:可以旋转,false:不可以旋转。 |
**示例:**
@@ -1757,9 +1757,9 @@ getBounds(): Promise\
**返回值:**
-| 类型 | 说明 |
-| -------------- | --------------------------------- |
-| Promise\ | 以Promise形式返回窗口的边框信息。 |
+| 类型 | 说明 |
+| ------------------------ | --------------------------------- |
+| Promise\<[Rect](#rect9)> | 以Promise形式返回窗口的边框信息。 |
**示例:**
@@ -1831,7 +1831,7 @@ isFocused(): Promise\
| 类型 | 说明 |
| -------------- | ----------------------------------- |
-| Promise\ | 以Promise形式返回窗口对象是否获焦。 |
+| Promise\ | 以Promise形式返回窗口对象是否获焦,true:获焦,false:未获焦。 |
**示例:**
@@ -1855,7 +1855,7 @@ isActived(): Promise\
| 类型 | 说明 |
| -------------- | --------------------------------------------- |
-| Promise\ | 以Promise形式返回窗口对象是否为用户交互窗口。 |
+| Promise\ | 以Promise形式返回窗口对象是否为用户交互窗口,true:交互窗口,false:非交互窗口。 |
**示例:**
@@ -1879,7 +1879,7 @@ focus(): Promise\
| 类型 | 说明 |
| -------------- | ----------------------------------- |
-| Promise\ | 以Promise形式返回操作是否成功完成。 |
+| Promise\ | 以Promise形式返回操作是否成功完成,true:操作已完成,false:操作未完成。 |
**示例:**
@@ -1910,7 +1910,7 @@ moveTo(x: number, y: number): Promise\
| 类型 | 说明 |
| -------------- | ----------------------------------- |
-| Promise\ | 以Promise形式返回操作是否成功完成。 |
+| Promise\ | 以Promise形式返回操作是否成功完成,true:操作已完成,false:操作未完成。 |
**示例:**
@@ -1942,7 +1942,7 @@ resize(wide: number, height: number, direction: ResizeDirection): Promise\ | 以Promise形式返回操作是否成功完成。 |
+| Promise\ | 以Promise形式返回操作是否成功完成,true:操作已完成,false:操作未完成。 |
**示例:**
@@ -1966,7 +1966,7 @@ split(): Promise\
| 类型 | 说明 |
| -------------- | ----------------------------------- |
-| Promise\ | 以Promise形式返回操作是否成功完成。 |
+| Promise\ | 以Promise形式返回操作是否成功完成,true:操作已完成,false:操作未完成。 |
**示例:**
@@ -1990,7 +1990,7 @@ maximize(): Promise\
| 类型 | 说明 |
| -------------- | ----------------------------------- |
-| Promise\ | 以Promise形式返回操作是否成功完成。 |
+| Promise\ | 以Promise形式返回操作是否成功完成,true:操作已完成,false:操作未完成。 |
**示例:**
@@ -2014,7 +2014,7 @@ minimize(): Promise\
| 类型 | 说明 |
| -------------- | ----------------------------------- |
-| Promise\ | 以Promise形式返回操作是否成功完成。 |
+| Promise\ | 以Promise形式返回操作是否成功完成,true:操作已完成,false:操作未完成。 |
**示例:**
@@ -2038,7 +2038,7 @@ resume(): Promise\
| 类型 | 说明 |
| -------------- | ----------------------------------- |
-| Promise\ | 以Promise形式返回操作是否成功完成。 |
+| Promise\ | 以Promise形式返回操作是否成功完成,true:操作已完成,false:操作未完成。 |
**示例:**
@@ -2062,7 +2062,7 @@ close(): Promise\
| 类型 | 说明 |
| -------------- | ----------------------------------- |
-| Promise\ | 以Promise形式返回操作是否成功完成。 |
+| Promise\ | 以Promise形式返回操作是否成功完成,true:操作已完成,false:操作未完成。 |
**示例:**
@@ -2095,9 +2095,9 @@ static create(fingers: number, steps: number): PointerMatrix
**返回值:**
-| 类型 | 说明 |
-| ------------- | ----------------------------- |
-| PointerMatrix | 返回构造的PointerMatrix对象。 |
+| 类型 | 说明 |
+| -------------------------------- | ----------------------------- |
+| [PointerMatrix](#pointermatrix9) | 返回构造的PointerMatrix对象。 |
**示例:**
@@ -2188,9 +2188,9 @@ async function demo() {
设备显示器的显示方向。
-| 名称 | 说明 |
-| ------------ | ------------------------------------ |
-| ROTATION_0 | 设备显示器不旋转,初始形态垂直显示。 |
-| ROTATION_90 | 设备显顺时针旋转90°,水平显示。 |
-| ROTATION_180 | 设备显顺时针旋转180°,逆向垂直显示。 |
-| ROTATION_270 | 设备显顺时针旋转270°,逆向水平显示。 |
+| 名称 | 说明 |
+| ------------ | ---------------------------------------- |
+| ROTATION_0 | 设备显示器不旋转,初始形态垂直显示。 |
+| ROTATION_90 | 设备显示器顺时针旋转90°,水平显示。 |
+| ROTATION_180 | 设备显示器顺时针旋转180°,逆向垂直显示。 |
+| ROTATION_270 | 设备显示器顺时针旋转270°,逆向水平显示。 |
diff --git a/zh-cn/application-dev/reference/apis/js-apis-vibrator.md b/zh-cn/application-dev/reference/apis/js-apis-vibrator.md
index 0ea804ed11d59ffe3834ab6d9ab2c1d79a0ec0ec..181af2f64f4875875c957d0b5f29a1a20ae4d038 100644
--- a/zh-cn/application-dev/reference/apis/js-apis-vibrator.md
+++ b/zh-cn/application-dev/reference/apis/js-apis-vibrator.md
@@ -13,11 +13,11 @@ vibrator模块提供控制马达振动的能力,如通过接口控制马达启
import vibrator from '@ohos.vibrator';
```
-## vibrator.vibrate
+## vibrator.startVibration9+
-vibrate(duration: number): Promise<void>
+startVibration(effect: VibrateEffect, attribute: VibrateAttribute, callback: AsyncCallback<void>): void
-按照指定持续时间触发马达振动。
+按照指定振动效果和振动属性触发马达振动。
**需要权限**:ohos.permission.VIBRATE
@@ -25,29 +25,37 @@ vibrate(duration: number): Promise<void>
**参数:**
-| 参数名 | 类型 | 必填 | 说明 |
-| -------- | ------ | ---- | ---------------------- |
-| duration | number | 是 | 马达振动时长, 单位ms。 |
-
-**返回值:**
-
-| 类型 | 说明 |
-| ------------------- | -------------------------------------- |
-| Promise<void> | Promise对象。无返回结果的Promise对象。 |
+| 参数名 | 类型 | 必填 | 说明 |
+| --------- | -------------------------------------- | ---- | :--------------------------------------------------------- |
+| effect | [VibrateEffect](#vibrateeffect9) | 是 | 马达振动效果。 |
+| attribute | [VibrateAttribute](#vibrateattribute9) | 是 | 马达振动属性。 |
+| callback | AsyncCallback<void> | 是 | 回调函数。当马达振动成功,err为undefined,否则为错误对象。 |
-**示例:**
+示例:
- ```js
- vibrator.vibrate(1000).then(()=>{
- console.log("Promise returned to indicate a successful vibration.");
- }, (error)=>{
- console.log("error.code"+error.code+"error.message"+error.message);
- });
- ```
+```js
+try {
+ vibrator.startVibration({
+ type:'time',
+ duration:1000,
+ },{
+ id:0,
+ usage: 'alarm'
+ }, (error)=>{
+ if(error){
+ console.log('vibrate fail, error.code: ' + error.code + 'error.message: ', + error.message);
+ }else{
+ console.log('Callback returned to indicate a successful vibration.');
+ }
+ });
+} catch(err) {
+ console.info('errCode: ' + err.code + ' ,msg: ' + err.message);
+}
+```
-## vibrator.vibrate9+
+## vibrator.startVibration9+
-vibrate(effect: VibrateEffect, attribute: VibrateAttribute): Promise<void>
+startVibration(effect: VibrateEffect, attribute: VibrateAttribute): Promise<void>
按照指定振动效果和振动属性触发马达振动。
@@ -55,10 +63,10 @@ vibrate(effect: VibrateEffect, attribute: VibrateAttribute): Promise<void>
**系统能力**:SystemCapability.Sensors.MiscDevice
-**参数:**
+**参数:**
| 参数名 | 类型 | 必填 | 说明 |
-| --------- | -------------------------------------- | ---- | :------------- |
+| --------- | -------------------------------------- | ---- | -------------- |
| effect | [VibrateEffect](#vibrateeffect9) | 是 | 马达振动效果。 |
| attribute | [VibrateAttribute](#vibrateattribute9) | 是 | 马达振动属性。 |
@@ -70,146 +78,60 @@ vibrate(effect: VibrateEffect, attribute: VibrateAttribute): Promise<void>
**示例:**
-```js
-vibrator.vibrate({
+ ```js
+try {
+ vibrator.startVibration({
type: 'time',
duration: 1000
-}, {
- id: 0,
- usage: 'alarm'
-}).then(()=>{
- console.log("Promise returned to indicate a successful vibration");
-}).catch((error)=>{
- console.log("error.code" + error.code + "error.message" + error.message);
-})
-```
-
-## vibrator.vibrate
-
-vibrate(duration: number, callback?: AsyncCallback<void>): void
-
-按照指定持续时间触发马达振动。
-
-**需要权限**:ohos.permission.VIBRATE
-
-**系统能力**:SystemCapability.Sensors.MiscDevice
-
-**参数:**
-| 参数名 | 类型 | 必填 | 说明 |
-| -------- | ------------------------- | ---- | ---------------------------------------------------------- |
-| duration | number | 是 | 马达振动时长, 单位ms。 |
-| callback | AsyncCallback<void> | 否 | 回调函数。当马达振动成功,err为undefined,否则为错误对象。 |
-
-**示例:**
-
- ```js
- vibrator.vibrate(1000,function(error){
- if(error){
- console.log("error.code" + error.code + "error.message" + error.message);
- }else{
- console.log("Callback returned to indicate a successful vibration.");
- }
- })
+ }, {
+ id: 0,
+ usage: 'alarm'
+ }).then(()=>{
+ console.log('Promise returned to indicate a successful vibration');
+ }).catch((error)=>{
+ console.log('error.code' + error.code + 'error.message' + error.message);
+ })
+} catch(err) {
+ console.info('errCode: ' + err.code + ' ,msg: ' + err.message);
+}
```
+## vibrator.stopVibration9+
-## vibrator.vibrate
-
-vibrate(effectId: EffectId): Promise<void>
+stopVibration(stopMode: VibratorStopMode, callback: AsyncCallback<void>): void
-按照预置振动效果触发马达振动。
+按照要停止指定的振动模式来停止马达的振动。如果要停止的振动模式与触发马达振动时的模式不相同,则调用本接口会失败。
**需要权限**:ohos.permission.VIBRATE
**系统能力**:SystemCapability.Sensors.MiscDevice
**参数:**
-| 参数名 | 类型 | 必填 | 说明 |
-| -------- | --------------------- | ---- | ------------------ |
-| effectId | [EffectId](#effectid) | 是 | 预置的振动效果ID。 |
-
-**返回值:**
-| 类型 | 说明 |
-| ------------------- | -------------------------------------- |
-| Promise<void> | Promise对象。无返回结果的Promise对象。 |
-
-**示例:**
- ```js
- vibrator.vibrate(vibrator.EffectId.EFFECT_CLOCK_TIMER).then(()=>{
- console.log("Promise returned to indicate a successful vibration.");
- }, (error)=>{
- console.log("error.code" + error.code + "error.message" + error.message);
- });
- ```
-
-
-## vibrator.vibrate
-
-vibrate(effectId: EffectId, callback?: AsyncCallback<void>): void
-
-按照指定振动效果触发马达振动。
-
-**需要权限**:ohos.permission.VIBRATE
-
-**系统能力**:SystemCapability.Sensors.MiscDevice
-**参数:**
-| 参数名 | 类型 | 必填 | 说明 |
-| -------- | ------------------------- | ---- | ---------------------------------------------------------- |
-| effectId | [EffectId](#effectid) | 是 | 预置的振动效果ID。 |
-| callback | AsyncCallback<void> | 否 | 回调函数。当马达振动成功,err为undefined,否则为错误对象。 |
+| 参数名 | 类型 | 必填 | 说明 |
+| -------- | ------------------------------------- | ---- | ------------------------------------------------------------ |
+| stopMode | [VibratorStopMode](#vibratorstopmode) | 是 | 马达停止指定的振动模式。 |
+| callback | AsyncCallback<void> | 是 | 回调函数。当马达停止振动成功,err为undefined,否则为错误对象。 |
**示例:**
```js
- vibrator.vibrate(vibrator.EffectId.EFFECT_CLOCK_TIMER, function(error){
- if(error){
- console.log("error.code" + error.code + "error.message" + error.message);
- }else{
- console.log("Callback returned to indicate a successful vibration.");
- }
- })
+try {
+ vibrator.stopVibration(vibrator.VibratorStopMode.VIBRATOR_STOP_MODE_PRESET, function(error){
+ if(error){
+ console.log('error.code' + error.code + 'error.message' + error.message);
+ }else{
+ console.log('Callback returned to indicate successful.');
+ }
+ })
+} catch(err) {
+ console.info('errCode: ' + err.code + ' ,msg: ' + err.message);
+}
```
-## vibrator.vibrate9+
-
-vibrate(effect: VibrateEffect, attribute: VibrateAttribute, callback: AsyncCallback<void>): void
-
-按照指定振动效果和振动属性触发马达振动。
-
-**需要权限**:ohos.permission.VIBRATE
-
-**系统能力**:SystemCapability.Sensors.MiscDevice
-
-**参数:**
-
-| 参数名 | 类型 | 必填 | 说明 |
-| --------- | -------------------------------------- | ---- | :--------------------------------------------------------- |
-| effect | [VibrateEffect](#vibrateeffect9) | 是 | 马达振动效果。 |
-| attribute | [VibrateAttribute](#vibrateattribute9) | 是 | 马达振动属性。 |
-| callback | AsyncCallback<void> | 是 | 回调函数。当马达振动成功,err为undefined,否则为错误对象。 |
-
-示例:
+## vibrator.stopVibration9+
-```js
-vibrator.vibrate({
- type:'time',
- duration:1000,
-},{
- id:0,
- usage: 'alarm'
-}, (error)=>{
- if(error){
- console.log("vibrate fail, error.code:" + error.code + ",error.message:" + error.message);
- }else{
- console.log("Callback returned to indicate a successful vibration.");
- }
-});
-```
-
-## vibrator.stop
-
-stop(stopMode: VibratorStopMode): Promise<void>
+stopVibration(stopMode: VibratorStopMode): Promise<void>
按照要停止指定的振动模式来停止马达的振动。如果要停止的振动模式与触发马达振动时的模式不相同,则调用本接口会失败。
@@ -218,6 +140,7 @@ stop(stopMode: VibratorStopMode): Promise<void>
**系统能力**:SystemCapability.Sensors.MiscDevice
**参数:**
+
| 参数名 | 类型 | 必填 | 说明 |
| -------- | ------------------------------------- | ---- | ------------------------ |
| stopMode | [VibratorStopMode](#vibratorstopmode) | 是 | 马达停止指定的振动模式。 |
@@ -231,43 +154,17 @@ stop(stopMode: VibratorStopMode): Promise<void>
**示例:**
```js
- vibrator.stop(vibrator.VibratorStopMode.VIBRATOR_STOP_MODE_PRESET).then(()=>{
- console.log("Promise returned to indicate a successful vibration.");
- }, (error)=>{
- console.log("error.code" + error.code + "error.message" + error.message);
- });
+try {
+ vibrator.stopVibration(vibrator.VibratorStopMode.VIBRATOR_STOP_MODE_PRESET).then(()=>{
+ console.log('Promise returned to indicate a successful vibration.');
+ }, (error)=>{
+ console.log('error.code' + error.code + 'error.message' + error.message);
+ });
+} catch(err) {
+ console.info('errCode: ' + err.code + ' ,msg: ' + err.message);
+}
```
-
-## vibrator.stop
-
-stop(stopMode: VibratorStopMode, callback?: AsyncCallback<void>): void;
-
-按照要停止指定的振动模式来停止马达的振动。如果要停止的振动模式与触发马达振动时的模式不相同,则调用本接口会失败。
-
-**需要权限**:ohos.permission.VIBRATE
-
-**系统能力**:SystemCapability.Sensors.MiscDevice
-
-**参数:**
-| 参数名 | 类型 | 必填 | 说明 |
-| -------- | ------------------------------------- | ---- | ------------------------------------------------------------ |
-| stopMode | [VibratorStopMode](#vibratorstopmode) | 是 | 马达停止指定的振动模式。 |
-| callback | AsyncCallback<void> | 否 | 回调函数。当马达停止振动成功,err为undefined,否则为错误对象。 |
-
-**示例:**
-
- ```js
- vibrator.stop(vibrator.VibratorStopMode.VIBRATOR_STOP_MODE_PRESET, function(error){
- if(error){
- console.log("error.code" + error.code + "error.message" + error.message);
- }else{
- console.log("Callback returned to indicate successful.");
- }
- })
- ```
-
-
## EffectId
马达振动效果的字符串。
@@ -353,3 +250,200 @@ stop(stopMode: VibratorStopMode, callback?: AsyncCallback<void>): void;
| physicalFeedback | string | 用于物理反馈振动的场景。 |
| simulateReality | string | 用于模拟现实振动的场景。 |
+## vibrator.vibrate(deprecated)
+
+vibrate(duration: number): Promise<void>
+
+按照指定持续时间触发马达振动。
+
+从API version 9 开始不再维护,建议使用 [vibrator.startVibration](#vibratorstartvibration9-1) 代替。
+
+**需要权限**:ohos.permission.VIBRATE
+
+**系统能力**:SystemCapability.Sensors.MiscDevice
+
+**参数:**
+
+| 参数名 | 类型 | 必填 | 说明 |
+| -------- | ------ | ---- | ---------------------- |
+| duration | number | 是 | 马达振动时长, 单位ms。 |
+
+**返回值:**
+
+| 类型 | 说明 |
+| ------------------- | -------------------------------------- |
+| Promise<void> | Promise对象。无返回结果的Promise对象。 |
+
+**示例:**
+
+ ```js
+vibrator.vibrate(1000).then(()=>{
+ console.log('Promise returned to indicate a successful vibration.');
+}, (error)=>{
+ console.log('error.code' + error.code + 'error.message' + error.message);
+});
+ ```
+
+## vibrator.vibrate(deprecated)
+
+vibrate(duration: number, callback?: AsyncCallback<void>): void
+
+按照指定持续时间触发马达振动。
+
+从API version 9 开始不再维护,建议使用 [vibrator.startVibration](#vibratorstartvibration9) 代替。
+
+**需要权限**:ohos.permission.VIBRATE
+
+**系统能力**:SystemCapability.Sensors.MiscDevice
+
+**参数:**
+
+| 参数名 | 类型 | 必填 | 说明 |
+| -------- | ------------------------- | ---- | ---------------------------------------------------------- |
+| duration | number | 是 | 马达振动时长, 单位ms。 |
+| callback | AsyncCallback<void> | 否 | 回调函数。当马达振动成功,err为undefined,否则为错误对象。 |
+
+**示例:**
+
+ ```js
+vibrator.vibrate(1000,function(error){
+ if(error){
+ console.log('error.code' + error.code + 'error.message' + error.message);
+ }else{
+ console.log('Callback returned to indicate a successful vibration.');
+ }
+})
+ ```
+
+
+## vibrator.vibrate(deprecated)
+
+vibrate(effectId: EffectId): Promise<void>
+
+按照预置振动效果触发马达振动。
+
+从API version 9 开始不再维护,建议使用 [vibrator.startVibration](#vibratorstartvibration9-1) 代替。
+
+**需要权限**:ohos.permission.VIBRATE
+
+**系统能力**:SystemCapability.Sensors.MiscDevice
+
+**参数:**
+
+| 参数名 | 类型 | 必填 | 说明 |
+| -------- | --------------------- | ---- | ------------------ |
+| effectId | [EffectId](#effectid) | 是 | 预置的振动效果ID。 |
+
+**返回值:**
+
+| 类型 | 说明 |
+| ------------------- | -------------------------------------- |
+| Promise<void> | Promise对象。无返回结果的Promise对象。 |
+
+**示例:**
+
+ ```js
+vibrator.vibrate(vibrator.EffectId.EFFECT_CLOCK_TIMER).then(()=>{
+ console.log('Promise returned to indicate a successful vibration.');
+}, (error)=>{
+ console.log('error.code' + error.code + 'error.message' + error.message);
+});
+ ```
+
+
+## vibrator.vibrate(deprecated)
+
+vibrate(effectId: EffectId, callback?: AsyncCallback<void>): void
+
+按照指定振动效果触发马达振动。
+
+从API version 9 开始不再维护,建议使用 [vibrator.startVibration](#vibratorstartvibration9) 代替。
+
+**需要权限**:ohos.permission.VIBRATE
+
+**系统能力**:SystemCapability.Sensors.MiscDevice
+
+**参数:**
+
+| 参数名 | 类型 | 必填 | 说明 |
+| -------- | ------------------------- | ---- | ---------------------------------------------------------- |
+| effectId | [EffectId](#effectid) | 是 | 预置的振动效果ID。 |
+| callback | AsyncCallback<void> | 否 | 回调函数。当马达振动成功,err为undefined,否则为错误对象。 |
+
+**示例:**
+
+ ```js
+vibrator.vibrate(vibrator.EffectId.EFFECT_CLOCK_TIMER, function(error){
+ if(error){
+ console.log('error.code' + error.code + 'error.message' + error.message);
+ }else{
+ console.log('Callback returned to indicate a successful vibration.');
+ }
+})
+ ```
+
+## vibrator.stop(deprecated)
+
+stop(stopMode: VibratorStopMode): Promise<void>
+
+按照要停止指定的振动模式来停止马达的振动。如果要停止的振动模式与触发马达振动时的模式不相同,则调用本接口会失败。
+
+从API version 9 开始不再维护,建议使用 [vibrator.stopVibration](#vibratorstopvibration9-1) 代替。
+
+**需要权限**:ohos.permission.VIBRATE
+
+**系统能力**:SystemCapability.Sensors.MiscDevice
+
+**参数:**
+
+| 参数名 | 类型 | 必填 | 说明 |
+| -------- | ------------------------------------- | ---- | ------------------------ |
+| stopMode | [VibratorStopMode](#vibratorstopmode) | 是 | 马达停止指定的振动模式。 |
+
+**返回值:**
+
+| 类型 | 说明 |
+| ------------------- | -------------------------------------- |
+| Promise<void> | Promise对象。无返回结果的Promise对象。 |
+
+**示例:**
+
+ ```js
+vibrator.stop(vibrator.VibratorStopMode.VIBRATOR_STOP_MODE_PRESET).then(()=>{
+ console.log('Promise returned to indicate a successful vibration.');
+}, (error)=>{
+ console.log('error.code' + error.code + 'error.message' + error.message);
+});
+ ```
+
+
+## vibrator.stop(deprecated)
+
+stop(stopMode: VibratorStopMode, callback?: AsyncCallback<void>): void
+
+按照要停止指定的振动模式来停止马达的振动。如果要停止的振动模式与触发马达振动时的模式不相同,则调用本接口会失败。
+
+从API version 9 开始不再维护,建议使用 [vibrator.stopVibration](#vibratorstopvibration9) 代替。
+
+**需要权限**:ohos.permission.VIBRATE
+
+**系统能力**:SystemCapability.Sensors.MiscDevice
+
+**参数:**
+
+| 参数名 | 类型 | 必填 | 说明 |
+| -------- | ------------------------------------- | ---- | ------------------------------------------------------------ |
+| stopMode | [VibratorStopMode](#vibratorstopmode) | 是 | 马达停止指定的振动模式。 |
+| callback | AsyncCallback<void> | 否 | 回调函数。当马达停止振动成功,err为undefined,否则为错误对象。 |
+
+**示例:**
+
+ ```js
+vibrator.stop(vibrator.VibratorStopMode.VIBRATOR_STOP_MODE_PRESET, function(error){
+ if(error){
+ console.log('error.code' + error.code + 'error.message' + error.message);
+ }else{
+ console.log('Callback returned to indicate successful.');
+ }
+})
+ ```
diff --git a/zh-cn/application-dev/reference/arkui-ts/figures/Column.png b/zh-cn/application-dev/reference/arkui-ts/figures/Column.png
deleted file mode 100644
index 90bb7a5557e42ccc9b6509f96f54328d7a27eea1..0000000000000000000000000000000000000000
Binary files a/zh-cn/application-dev/reference/arkui-ts/figures/Column.png and /dev/null differ
diff --git a/zh-cn/application-dev/reference/arkui-ts/figures/Row.png b/zh-cn/application-dev/reference/arkui-ts/figures/Row.png
deleted file mode 100644
index 6bf426a5f019e76b7b3a0953643988690eb67b1e..0000000000000000000000000000000000000000
Binary files a/zh-cn/application-dev/reference/arkui-ts/figures/Row.png and /dev/null differ
diff --git a/zh-cn/application-dev/reference/arkui-ts/figures/align.png b/zh-cn/application-dev/reference/arkui-ts/figures/align.png
new file mode 100644
index 0000000000000000000000000000000000000000..beed805dbff1ec1526bf034c011cf2c7b926eae8
Binary files /dev/null and b/zh-cn/application-dev/reference/arkui-ts/figures/align.png differ
diff --git a/zh-cn/application-dev/reference/arkui-ts/figures/badge.png b/zh-cn/application-dev/reference/arkui-ts/figures/badge.png
new file mode 100644
index 0000000000000000000000000000000000000000..0041374b52a2be5a93f620dabed0cba74990ee6f
Binary files /dev/null and b/zh-cn/application-dev/reference/arkui-ts/figures/badge.png differ
diff --git a/zh-cn/application-dev/reference/arkui-ts/figures/blankmin.png b/zh-cn/application-dev/reference/arkui-ts/figures/blankmin.png
new file mode 100644
index 0000000000000000000000000000000000000000..d37582ff571d36ecc41539453192955b84481765
Binary files /dev/null and b/zh-cn/application-dev/reference/arkui-ts/figures/blankmin.png differ
diff --git a/zh-cn/application-dev/reference/arkui-ts/figures/checkboxgroup.gif b/zh-cn/application-dev/reference/arkui-ts/figures/checkboxgroup.gif
deleted file mode 100644
index 27b1a29a14e3bfca893f853d1e185c7493afb366..0000000000000000000000000000000000000000
Binary files a/zh-cn/application-dev/reference/arkui-ts/figures/checkboxgroup.gif and /dev/null differ
diff --git a/zh-cn/application-dev/reference/arkui-ts/figures/checkboxgroup1.png b/zh-cn/application-dev/reference/arkui-ts/figures/checkboxgroup1.png
new file mode 100644
index 0000000000000000000000000000000000000000..7042b41c96d5eca395d4ac035fefb7d55347535d
Binary files /dev/null and b/zh-cn/application-dev/reference/arkui-ts/figures/checkboxgroup1.png differ
diff --git a/zh-cn/application-dev/reference/arkui-ts/figures/checkboxgroup2.png b/zh-cn/application-dev/reference/arkui-ts/figures/checkboxgroup2.png
new file mode 100644
index 0000000000000000000000000000000000000000..7d7a2b901873cf2daedd412b96508b6c40aa0244
Binary files /dev/null and b/zh-cn/application-dev/reference/arkui-ts/figures/checkboxgroup2.png differ
diff --git a/zh-cn/application-dev/reference/arkui-ts/figures/checkboxgroup3.png b/zh-cn/application-dev/reference/arkui-ts/figures/checkboxgroup3.png
new file mode 100644
index 0000000000000000000000000000000000000000..53988fae3e8f660fd8411ef44bfa2dc983886a5e
Binary files /dev/null and b/zh-cn/application-dev/reference/arkui-ts/figures/checkboxgroup3.png differ
diff --git a/zh-cn/application-dev/reference/arkui-ts/figures/column.png b/zh-cn/application-dev/reference/arkui-ts/figures/column.png
new file mode 100644
index 0000000000000000000000000000000000000000..27321b5a24798d6d423cbf76eab974f4ebc2d0fb
Binary files /dev/null and b/zh-cn/application-dev/reference/arkui-ts/figures/column.png differ
diff --git a/zh-cn/application-dev/reference/arkui-ts/figures/gauge-image.png b/zh-cn/application-dev/reference/arkui-ts/figures/gauge-image.png
new file mode 100644
index 0000000000000000000000000000000000000000..d8fa99c3cc70ca08914a3850d95d2511eff923cd
Binary files /dev/null and b/zh-cn/application-dev/reference/arkui-ts/figures/gauge-image.png differ
diff --git a/zh-cn/application-dev/reference/arkui-ts/figures/gradientColor1.png b/zh-cn/application-dev/reference/arkui-ts/figures/gradientColor1.png
new file mode 100644
index 0000000000000000000000000000000000000000..b82f81358cd03243b99ac23b6eb190238bf22f0b
Binary files /dev/null and b/zh-cn/application-dev/reference/arkui-ts/figures/gradientColor1.png differ
diff --git a/zh-cn/application-dev/reference/arkui-ts/figures/gradientColor2.png b/zh-cn/application-dev/reference/arkui-ts/figures/gradientColor2.png
new file mode 100644
index 0000000000000000000000000000000000000000..c50424c9fd41bdda195affb5170cac38bd3df0e5
Binary files /dev/null and b/zh-cn/application-dev/reference/arkui-ts/figures/gradientColor2.png differ
diff --git a/zh-cn/application-dev/reference/arkui-ts/figures/gradientColor3.png b/zh-cn/application-dev/reference/arkui-ts/figures/gradientColor3.png
new file mode 100644
index 0000000000000000000000000000000000000000..84d9674c5b43486a260ca9e1c9b1017b9022583c
Binary files /dev/null and b/zh-cn/application-dev/reference/arkui-ts/figures/gradientColor3.png differ
diff --git a/zh-cn/application-dev/reference/arkui-ts/figures/gridSpan.png b/zh-cn/application-dev/reference/arkui-ts/figures/gridSpan.png
new file mode 100644
index 0000000000000000000000000000000000000000..80b67bee5bc99e753a2176ce2544b572ca41243e
Binary files /dev/null and b/zh-cn/application-dev/reference/arkui-ts/figures/gridSpan.png differ
diff --git a/zh-cn/application-dev/reference/arkui-ts/figures/imageeffect.png b/zh-cn/application-dev/reference/arkui-ts/figures/imageeffect.png
new file mode 100644
index 0000000000000000000000000000000000000000..fbcc0c6b68235aa7306556030fc60fed716b26b4
Binary files /dev/null and b/zh-cn/application-dev/reference/arkui-ts/figures/imageeffect.png differ
diff --git a/zh-cn/application-dev/reference/arkui-ts/figures/nozindex.png b/zh-cn/application-dev/reference/arkui-ts/figures/nozindex.png
new file mode 100644
index 0000000000000000000000000000000000000000..8c131eabacb8bcdee0b8ba891faaab69bb2a08bd
Binary files /dev/null and b/zh-cn/application-dev/reference/arkui-ts/figures/nozindex.png differ
diff --git a/zh-cn/application-dev/reference/arkui-ts/figures/opacity.png b/zh-cn/application-dev/reference/arkui-ts/figures/opacity.png
new file mode 100644
index 0000000000000000000000000000000000000000..d95114ede941db77cf865d3fab288f602ddcc1d0
Binary files /dev/null and b/zh-cn/application-dev/reference/arkui-ts/figures/opacity.png differ
diff --git a/zh-cn/application-dev/reference/arkui-ts/figures/popup.gif b/zh-cn/application-dev/reference/arkui-ts/figures/popup.gif
new file mode 100644
index 0000000000000000000000000000000000000000..b32a43bd8fc4ae6416b8402c61e1d8e3b9e694ef
Binary files /dev/null and b/zh-cn/application-dev/reference/arkui-ts/figures/popup.gif differ
diff --git a/zh-cn/application-dev/reference/arkui-ts/figures/position.png b/zh-cn/application-dev/reference/arkui-ts/figures/position.png
new file mode 100644
index 0000000000000000000000000000000000000000..0c9e34bf611b4d51a49875d71f23fef24d6e2571
Binary files /dev/null and b/zh-cn/application-dev/reference/arkui-ts/figures/position.png differ
diff --git a/zh-cn/application-dev/reference/arkui-ts/figures/row.png b/zh-cn/application-dev/reference/arkui-ts/figures/row.png
new file mode 100644
index 0000000000000000000000000000000000000000..dd97ea25d042abb1bf14ea0ba1012eedc57eb135
Binary files /dev/null and b/zh-cn/application-dev/reference/arkui-ts/figures/row.png differ
diff --git a/zh-cn/application-dev/reference/arkui-ts/figures/size.png b/zh-cn/application-dev/reference/arkui-ts/figures/size.png
new file mode 100644
index 0000000000000000000000000000000000000000..5170abe9fb68747018cecc57e27df68806bafac4
Binary files /dev/null and b/zh-cn/application-dev/reference/arkui-ts/figures/size.png differ
diff --git a/zh-cn/application-dev/reference/arkui-ts/figures/textblur.png b/zh-cn/application-dev/reference/arkui-ts/figures/textblur.png
new file mode 100644
index 0000000000000000000000000000000000000000..cd151a5e84516952ec7db39c2abd2a1524f728db
Binary files /dev/null and b/zh-cn/application-dev/reference/arkui-ts/figures/textblur.png differ
diff --git a/zh-cn/application-dev/reference/arkui-ts/figures/textstyle.png b/zh-cn/application-dev/reference/arkui-ts/figures/textstyle.png
new file mode 100644
index 0000000000000000000000000000000000000000..38128cb5f1a6aa7a36a3b4e483bf2815c7170117
Binary files /dev/null and b/zh-cn/application-dev/reference/arkui-ts/figures/textstyle.png differ
diff --git a/zh-cn/application-dev/reference/arkui-ts/figures/touchtarget.gif b/zh-cn/application-dev/reference/arkui-ts/figures/touchtarget.gif
new file mode 100644
index 0000000000000000000000000000000000000000..550dfe998ac31230b52ff3972974cdd4a7431b28
Binary files /dev/null and b/zh-cn/application-dev/reference/arkui-ts/figures/touchtarget.gif differ
diff --git a/zh-cn/application-dev/reference/arkui-ts/figures/visibility.png b/zh-cn/application-dev/reference/arkui-ts/figures/visibility.png
new file mode 100644
index 0000000000000000000000000000000000000000..89018fade9d9bef19dfc8a55d4477ba309353871
Binary files /dev/null and b/zh-cn/application-dev/reference/arkui-ts/figures/visibility.png differ
diff --git a/zh-cn/application-dev/reference/arkui-ts/figures/zh-cn_image_0000001174104390.gif b/zh-cn/application-dev/reference/arkui-ts/figures/zh-cn_image_0000001174104390.gif
deleted file mode 100644
index fe69ab973cfd17f540dd1da4fd04de890af95c74..0000000000000000000000000000000000000000
Binary files a/zh-cn/application-dev/reference/arkui-ts/figures/zh-cn_image_0000001174104390.gif and /dev/null differ
diff --git a/zh-cn/application-dev/reference/arkui-ts/figures/zh-cn_image_0000001174104392.gif b/zh-cn/application-dev/reference/arkui-ts/figures/zh-cn_image_0000001174104392.gif
deleted file mode 100644
index ee69d15a36eda3047be045a3d037fd27a37166fe..0000000000000000000000000000000000000000
Binary files a/zh-cn/application-dev/reference/arkui-ts/figures/zh-cn_image_0000001174104392.gif and /dev/null differ
diff --git a/zh-cn/application-dev/reference/arkui-ts/figures/zh-cn_image_0000001174264368.gif b/zh-cn/application-dev/reference/arkui-ts/figures/zh-cn_image_0000001174264368.gif
deleted file mode 100644
index 3174da059167d3560a99d50cca06ec678cabed96..0000000000000000000000000000000000000000
Binary files a/zh-cn/application-dev/reference/arkui-ts/figures/zh-cn_image_0000001174264368.gif and /dev/null differ
diff --git a/zh-cn/application-dev/reference/arkui-ts/figures/zh-cn_image_0000001174264384.gif b/zh-cn/application-dev/reference/arkui-ts/figures/zh-cn_image_0000001174264384.gif
deleted file mode 100644
index dffa33c4389c4576d2492cd98499b71715b8ead8..0000000000000000000000000000000000000000
Binary files a/zh-cn/application-dev/reference/arkui-ts/figures/zh-cn_image_0000001174264384.gif and /dev/null differ
diff --git a/zh-cn/application-dev/reference/arkui-ts/figures/zh-cn_image_0000001174422916.png b/zh-cn/application-dev/reference/arkui-ts/figures/zh-cn_image_0000001174422916.png
deleted file mode 100644
index 2eb96b00f11e597fcc3e3d5ef32701e0a4ef5f5b..0000000000000000000000000000000000000000
Binary files a/zh-cn/application-dev/reference/arkui-ts/figures/zh-cn_image_0000001174422916.png and /dev/null differ
diff --git a/zh-cn/application-dev/reference/arkui-ts/figures/zh-cn_image_0000001174582860.png b/zh-cn/application-dev/reference/arkui-ts/figures/zh-cn_image_0000001174582860.png
deleted file mode 100644
index 92ddc7d5d9ee2f87128ed8951b2294ea3c07f650..0000000000000000000000000000000000000000
Binary files a/zh-cn/application-dev/reference/arkui-ts/figures/zh-cn_image_0000001174582860.png and /dev/null differ
diff --git a/zh-cn/application-dev/reference/arkui-ts/figures/zh-cn_image_0000001184400598.gif b/zh-cn/application-dev/reference/arkui-ts/figures/zh-cn_image_0000001184400598.gif
deleted file mode 100644
index e97b2a2406059ce3af77ade27bb634845d807726..0000000000000000000000000000000000000000
Binary files a/zh-cn/application-dev/reference/arkui-ts/figures/zh-cn_image_0000001184400598.gif and /dev/null differ
diff --git a/zh-cn/application-dev/reference/arkui-ts/figures/zh-cn_image_0000001187055946.gif b/zh-cn/application-dev/reference/arkui-ts/figures/zh-cn_image_0000001187055946.gif
deleted file mode 100644
index 7631bb0d995839d59a9d3876f91fd7e688c35758..0000000000000000000000000000000000000000
Binary files a/zh-cn/application-dev/reference/arkui-ts/figures/zh-cn_image_0000001187055946.gif and /dev/null differ
diff --git a/zh-cn/application-dev/reference/arkui-ts/figures/zh-cn_image_0000001219662647.gif b/zh-cn/application-dev/reference/arkui-ts/figures/zh-cn_image_0000001219662647.gif
deleted file mode 100644
index b0e5e55e1af19bb46a74300bf2ae60f95225a874..0000000000000000000000000000000000000000
Binary files a/zh-cn/application-dev/reference/arkui-ts/figures/zh-cn_image_0000001219662647.gif and /dev/null differ
diff --git a/zh-cn/application-dev/reference/arkui-ts/figures/zh-cn_image_0000001219662673.png b/zh-cn/application-dev/reference/arkui-ts/figures/zh-cn_image_0000001219662673.png
deleted file mode 100644
index 5499902761b534f84a0405094afe2fb5d4724322..0000000000000000000000000000000000000000
Binary files a/zh-cn/application-dev/reference/arkui-ts/figures/zh-cn_image_0000001219662673.png and /dev/null differ
diff --git a/zh-cn/application-dev/reference/arkui-ts/figures/zh-cn_image_0000001219864147.gif b/zh-cn/application-dev/reference/arkui-ts/figures/zh-cn_image_0000001219864147.gif
deleted file mode 100644
index 016da55bb5d98a3d2787d870bf2575fbaf383990..0000000000000000000000000000000000000000
Binary files a/zh-cn/application-dev/reference/arkui-ts/figures/zh-cn_image_0000001219864147.gif and /dev/null differ
diff --git a/zh-cn/application-dev/reference/arkui-ts/figures/zh-cn_image_0000001219864149.png b/zh-cn/application-dev/reference/arkui-ts/figures/zh-cn_image_0000001219864149.png
deleted file mode 100644
index 2c20e6d28a0636b8122f6377052933c33cfcffaf..0000000000000000000000000000000000000000
Binary files a/zh-cn/application-dev/reference/arkui-ts/figures/zh-cn_image_0000001219864149.png and /dev/null differ
diff --git a/zh-cn/application-dev/reference/arkui-ts/figures/zindex.png b/zh-cn/application-dev/reference/arkui-ts/figures/zindex.png
new file mode 100644
index 0000000000000000000000000000000000000000..bb2193d497c6cce42b5d7c6c94671c8bf7f6158e
Binary files /dev/null and b/zh-cn/application-dev/reference/arkui-ts/figures/zindex.png differ
diff --git a/zh-cn/application-dev/reference/arkui-ts/ts-basic-components-blank.md b/zh-cn/application-dev/reference/arkui-ts/ts-basic-components-blank.md
index 2c499e4ddecb93bfbcc8d1afdcc3626754de7701..6d1d1b49596bbd1dc23c5852b8e471918e5d58cf 100644
--- a/zh-cn/application-dev/reference/arkui-ts/ts-basic-components-blank.md
+++ b/zh-cn/application-dev/reference/arkui-ts/ts-basic-components-blank.md
@@ -32,7 +32,8 @@ Blank(min?: number | string)
## 示例
-
+### 示例1
+Blank组件在横竖屏占满空余空间效果。
```ts
// xxx.ets
@Entry
@@ -57,3 +58,37 @@ struct BlankExample {
横屏状态

+
+
+### 示例2
+Blank组件的父组件未设置宽度时,min参数的使用效果。
+
+```ts
+// xxx.ets
+@Entry
+@Component
+struct BlankExample {
+ build() {
+ Column({ space: 20 }) {
+ // blank父组件不设置宽度时,Blank失效,可以通过设置min最小宽度填充固定宽度
+ Row() {
+ Text('Bluetooth').fontSize(18)
+ Blank().color(Color.Yellow)
+ Toggle({ type: ToggleType.Switch })
+ }.backgroundColor(0xFFFFFF).borderRadius(15).padding({ left: 12 })
+
+ Row() {
+ Text('Bluetooth').fontSize(18)
+ // 设置最小宽度为160
+ Blank('160').color(Color.Yellow)
+ Toggle({ type: ToggleType.Switch })
+ }.backgroundColor(0xFFFFFF).borderRadius(15).padding({ left: 12 })
+
+ }.backgroundColor(0xEFEFEF).padding(20).width('100%')
+ }
+}
+```
+Blank父组件未设置宽度时,子组件间无空白填充,使用min参数设置填充尺寸
+
+
+
diff --git a/zh-cn/application-dev/reference/arkui-ts/ts-basic-components-checkboxgroup.md b/zh-cn/application-dev/reference/arkui-ts/ts-basic-components-checkboxgroup.md
index 0bf526f273ca4fe094efdf011cce8e5dd55c2956..bb76a56ad6dd536a03971d1217e9b7a91dd5dd8b 100644
--- a/zh-cn/application-dev/reference/arkui-ts/ts-basic-components-checkboxgroup.md
+++ b/zh-cn/application-dev/reference/arkui-ts/ts-basic-components-checkboxgroup.md
@@ -14,7 +14,7 @@
CheckboxGroup(options?: { group?: string })
-创建多选框群组,可以控制群组内的Checkbox全选或者不全选,相同group的Checkbox和CheckboxGroup为同一群组。
+创建多选框群组,可以控制群组内的Checkbox全选或者不全选,group值相同的Checkbox和CheckboxGroup为同一群组。
**参数:**
@@ -39,13 +39,13 @@ CheckboxGroup(options?: { group?: string })
| 名称 | 功能描述 |
| -------- | -------- |
-| onChange (callback: (event: CheckboxGroupResult) => void ) |CheckboxGroup的选中状态或群组内的Checkbox的选中状态发生变化时,触发回调。|
+| onChange (callback: (event: [CheckboxGroupResult](#checkboxgroupresult对象说明)) => void ) |CheckboxGroup的选中状态或群组内的Checkbox的选中状态发生变化时,触发回调。|
## CheckboxGroupResult对象说明
| 名称 | 类型 | 描述 |
| ------ | ------ | ------- |
| name | Array<string> | 群组内所有被选中的多选框名称。 |
-| status | SelectStatus | 选中状态。 |
+| status | [SelectStatus](#selectstatus枚举说明) | 选中状态。 |
## SelectStatus枚举说明
@@ -66,18 +66,19 @@ struct CheckboxExample {
build() {
Scroll() {
Column() {
+ // 全选按钮
Flex({ justifyContent: FlexAlign.Start, alignItems: ItemAlign.Center }) {
CheckboxGroup({ group: 'checkboxGroup' })
.selectedColor(0xed6f21)
.onChange((itemName: CheckboxGroupResult) => {
- console.info("TextPicker::dialogResult is" + JSON.stringify(itemName))
+ console.info("checkbox group content" + JSON.stringify(itemName))
})
- Text('select all').fontSize(20)
+ Text('Select All').fontSize(20)
}
+ // 选项1
Flex({ justifyContent: FlexAlign.Start, alignItems: ItemAlign.Center }) {
Checkbox({ name: 'checkbox1', group: 'checkboxGroup' })
- .select(true)
.selectedColor(0x39a2db)
.onChange((value: boolean) => {
console.info('Checkbox1 change is' + value)
@@ -85,9 +86,9 @@ struct CheckboxExample {
Text('Checkbox1').fontSize(20)
}
+ // 选项2
Flex({ justifyContent: FlexAlign.Start, alignItems: ItemAlign.Center }) {
Checkbox({ name: 'checkbox2', group: 'checkboxGroup' })
- .select(false)
.selectedColor(0x39a2db)
.onChange((value: boolean) => {
console.info('Checkbox2 change is' + value)
@@ -95,9 +96,9 @@ struct CheckboxExample {
Text('Checkbox2').fontSize(20)
}
+ // 选项3
Flex({ justifyContent: FlexAlign.Start, alignItems: ItemAlign.Center }) {
Checkbox({ name: 'checkbox3', group: 'checkboxGroup' })
- .select(true)
.selectedColor(0x39a2db)
.onChange((value: boolean) => {
console.info('Checkbox3 change is' + value)
@@ -109,4 +110,10 @@ struct CheckboxExample {
}
}
```
-
+多选框组三种状态图示:
+
+
+
+
+
+
diff --git a/zh-cn/application-dev/reference/arkui-ts/ts-basic-components-datapanel.md b/zh-cn/application-dev/reference/arkui-ts/ts-basic-components-datapanel.md
index c099110818c1209fb6acfebd0bb50a43ea0d7f77..cc8d763c17ca1ba2368d6f3570b348272f2ef1f8 100644
--- a/zh-cn/application-dev/reference/arkui-ts/ts-basic-components-datapanel.md
+++ b/zh-cn/application-dev/reference/arkui-ts/ts-basic-components-datapanel.md
@@ -24,7 +24,7 @@ DataPanel(options:{values: number[], max?: number, type?: DataPanelType})
| ----------------- | -------- | ----- | -------- |
| values | number[] | 是 | 数据值列表,最大支持9个数据。 |
| max | number | 否 | - max大于0,表示数据的最大值。 - max小于等于0,max等于value数组各项的和,按比例显示。 默认值:100 |
-| type8+ | DataPanelType | 否 | 数据面板的类型。 默认值:DataPanelType.Circle |
+| type8+ | [DataPanelType](#datapaneltype枚举说明) | 否 | 数据面板的类型。 默认值:DataPanelType.Circle |
## DataPanelType枚举说明
diff --git a/zh-cn/application-dev/reference/arkui-ts/ts-basic-components-divider.md b/zh-cn/application-dev/reference/arkui-ts/ts-basic-components-divider.md
index b7a01966d2beee4a104e0d10982e969a0d7c4ef4..cdf957e31d7c9494de9168b6c0b3655473f2574a 100644
--- a/zh-cn/application-dev/reference/arkui-ts/ts-basic-components-divider.md
+++ b/zh-cn/application-dev/reference/arkui-ts/ts-basic-components-divider.md
@@ -47,6 +47,7 @@ struct DividerExample {
Divider()
Row().width('100%').height(40).backgroundColor(0xF1F3F5)
+ // 纵向分割线
Text('Vertical divider').fontSize(9).fontColor(0xCCCCCC)
Flex({ alignItems: ItemAlign.Center, wrap: FlexWrap.Wrap }) {
Text('bravery')
@@ -56,6 +57,7 @@ struct DividerExample {
Text('upward')
}.width(250)
+ // 设置分割线宽度和端点样式
Text('Custom Styles').fontSize(9).fontColor(0xCCCCCC)
Row().width('100%').height(40).backgroundColor(0xF1F3F5)
Divider().vertical(false).strokeWidth(5).color(0x2788D9).lineCap(LineCapStyle.Round)
diff --git a/zh-cn/application-dev/reference/arkui-ts/ts-basic-components-gauge.md b/zh-cn/application-dev/reference/arkui-ts/ts-basic-components-gauge.md
index 885fe031d58d2b9b5b19f895e1c3efbdd6ebd2c8..52bfcd5ba688f84db5e9dc57264545caa4453b89 100644
--- a/zh-cn/application-dev/reference/arkui-ts/ts-basic-components-gauge.md
+++ b/zh-cn/application-dev/reference/arkui-ts/ts-basic-components-gauge.md
@@ -21,7 +21,7 @@ Gauge(options:{value: number, min?: number, max?: number})
| 参数名 | 参数类型 | 必填 | 参数描述 |
| -------- | -------- | -------- | -------- |
-| value | number | 是 | 当前数据值。 |
+| value | number | 是 | 量规图的当前数据值,即图中指针指向位置。用于组件创建时量规图初始值的预置。 |
| min | number | 否 | 当前数据段最小值。 默认值:0 |
| max | number | 否 | 当前数据段最大值。 默认值:100 |
@@ -31,11 +31,11 @@ Gauge(options:{value: number, min?: number, max?: number})
| 名称 | 参数类型 | 描述 |
| -------- | -------- | -------- |
-| value | number | 设置当前数据图表的值。 默认值:0 |
-| startAngle | number | 设置起始角度位置,时钟0点为0度,顺时针方向为正角度。 默认值:-150 |
-| endAngle | number | 设置终止角度位置,时钟0点为0度,顺时针方向为正角度。 默认值:150 |
-| colors | Array<ColorStop> | 设置图表的颜色,支持分段颜色设置。 |
-| strokeWidth | Length | 设置环形图表的环形厚度。 |
+| value | number | 设置量规图的数据值,可用于动态修改量规图的数据值。 默认值:0 |
+| startAngle | number | 设置起始角度位置,时钟0点为0度,顺时针方向为正角度。 默认值:0 |
+| endAngle | number | 设置终止角度位置,时钟0点为0度,顺时针方向为正角度。 默认值:360 |
+| colors | Array<[ColorStop](#colorstop)> | 设置量规图的颜色,支持分段颜色设置。 |
+| strokeWidth | Length | 设置环形量规图的环形厚度。 |
## ColorStop
@@ -55,15 +55,30 @@ Gauge(options:{value: number, min?: number, max?: number})
@Component
struct GaugeExample {
build() {
- Column() {
- Gauge({ value: 50, min: 0, max: 100 })
- .startAngle(210).endAngle(150)
- .colors([[0x317AF7, 1], [0x5BA854, 1], [0xE08C3A, 1], [0x9C554B, 1], [0xD94838, 1]])
- .strokeWidth(20)
+ Column({ space: 20 }) {
+ // 使用默认的min和max为0-100,角度范围默认0-360,value值设置
+ // 参数中设置当前值为75
+ Gauge({ value: 75 })
+ .width(200).height(200)
+ .colors([[0x317AF7, 1], [0x5BA854, 1], [0xE08C3A, 1], [0x9C554B, 1]])
+
+ // 参数设置当前值为75,属性设置值为25,属性设置优先级高
+ Gauge({ value: 75 })
+ .value(25) //属性和参数都设置时以参数为准
.width(200).height(200)
+ .colors([[0x317AF7, 1], [0x5BA854, 1], [0xE08C3A, 1], [0x9C554B, 1]])
+
+ // 210--150度环形图表
+ Gauge({ value: 30, min: 0, max: 100 })
+ .startAngle(210)
+ .endAngle(150)
+ .colors([[0x317AF7, 0.1], [0x5BA854, 0.2], [0xE08C3A, 0.3], [0x9C554B, 0.4]])
+ .strokeWidth(20)
+ .width(200)
+ .height(200)
}.width('100%').margin({ top: 5 })
}
}
```
-
+
diff --git a/zh-cn/application-dev/reference/arkui-ts/ts-basic-components-image.md b/zh-cn/application-dev/reference/arkui-ts/ts-basic-components-image.md
index 072bc49476ee62742a065c60dd766618e40dbb4f..79c635647e64f55a94a02962f91b4952bb00998c 100644
--- a/zh-cn/application-dev/reference/arkui-ts/ts-basic-components-image.md
+++ b/zh-cn/application-dev/reference/arkui-ts/ts-basic-components-image.md
@@ -52,6 +52,7 @@ Image(src: string | PixelMap | Resource)
> **说明:**
>
> 使用快捷组合键对Image组件复制的前提是,该组件必须处于获焦状态。将Image组件的属性focusable设置为true,即可使用TAB键将焦点切换到Image组件上,再将Image组件的focusOnTouch属性设置为true,即可实现点击获焦。
+> 图片设置svg图源时,支持的标签范围有限,目前支持的svg标签包括svg、rect、circle、ellipse、path、line、polyline、polygon、animate、animateMotion、animateTransform。
### ImageInterpolation
diff --git a/zh-cn/application-dev/reference/arkui-ts/ts-basic-components-textclock.md b/zh-cn/application-dev/reference/arkui-ts/ts-basic-components-textclock.md
index 675e57599dbb993dffb2e2f29bc9fd3b65b0636c..d3201827e9f9528d5b449a760534c996958e5ab5 100644
--- a/zh-cn/application-dev/reference/arkui-ts/ts-basic-components-textclock.md
+++ b/zh-cn/application-dev/reference/arkui-ts/ts-basic-components-textclock.md
@@ -21,6 +21,21 @@ TextClock(options?: { timeZoneOffset?: number, controller?: TextClockController
| timeZoneOffset | number | 否 | 设置时区偏移量。 取值范围为[-14, 12],表示东十二区到西十二区,其中负值表示东时区,正值表示西时区,比如东八区为-8。 对横跨国际日界线的国家或地区,用-13(UTC+13)和-14(UTC+14)来保证整个国家或者区域处在相同的时间,当设置的值不在取值范围内时,将使用当前系统的时区偏移量。 默认值:当前系统的时区偏移量 |
| controller | [TextClockController](#textclockcontroller) | 否 | 绑定一个控制器,用来控制文本时钟的状态。|
+## 属性
+
+除支持[通用属性](ts-universal-attributes-size.md)外,还支持以下属性:
+
+| 名称 | 参数类型 | 描述 |
+| ------ | --------------- | ------------------------------------------------------------ |
+| format | string | 设置显示时间格式。 日期间隔符固定为"/",时间间隔符为":"。 如yyyyMMdd,yyyy-MM-dd显示为yyyy/MM/dd, hhmmss显示为hh:mm:ss。 时间格式只用写一位即可,如"hhmmss"等同于"hms"。 支持的时间格式化字符串: - YYYY/yyyy:完整年份。 - YY/yy:年份后两位。 - M:月份(若想使用01月则使用MM)。 - d:日期(若想使用01日则使用dd)。 - D:年中日(一年中的第几天)。 - H:24小时制。 - h:12小时制。 - m:分钟。 - s:秒。 - SSS:毫秒。 若格式未匹配,则使用默认值。 默认值: 'hms'|
+
+## 事件
+
+除支持[通用事件](ts-universal-events-click.md)外,还支持以下事件:
+
+| 名称 | 功能描述 |
+| -------------------------------------------- | ------------------------------------------------------------ |
+| onDateChange(event: (value: number) => void) | 提供时间变化回调,该事件最小回调间隔为秒。 - value: Unix Time Stamp,即自1970年1月1日(UTC)起经过的毫秒数。 |
## TextClockController
@@ -44,24 +59,6 @@ stop()
停止文本时钟。
-
-## 属性
-
-除支持[通用属性](ts-universal-attributes-size.md)外,还支持以下属性:
-
-| 名称 | 参数类型 | 描述 |
-| ------ | --------------- | ------------------------------------------------------------ |
-| format | string | 设置显示时间格式。 日期间隔符固定为"/",时间间隔符为":"。 如yyyyMMdd,yyyy-MM-dd显示为yyyy/MM/dd, hhmmss显示为hh:mm:ss。 时间格式只用写一位即可,如"hhmmss"等同于"hms"。 支持的时间格式化字符串: - YYYY/yyyy:完整年份。 - YY/yy:年份后两位。 - M:月份(若想使用01月则使用MM)。 - d:日期(若想使用01日则使用dd)。 - D:年中日(一年中的第几天)。 - H:24小时制。 - h:12小时制。 - m:分钟。 - s:秒。 - SSS:毫秒。 默认值: 'hms'|
-
-## 事件
-
-除支持[通用事件](ts-universal-events-click.md)外,还支持以下事件:
-
-| 名称 | 功能描述 |
-| -------------------------------------------- | ------------------------------------------------------------ |
-| onDateChange(event: (value: number) => void) | 提供时间变化回调,该事件最小回调间隔为秒。 value: Unix Time Stamp,即自1970年1月1日(UTC)起经过的毫秒数。 |
-
-
## 示例
```ts
@@ -101,4 +98,3 @@ struct Second {
}
```

-
diff --git a/zh-cn/application-dev/reference/arkui-ts/ts-basic-components-texttimer.md b/zh-cn/application-dev/reference/arkui-ts/ts-basic-components-texttimer.md
index 993fc551a87ea814e98aa90e25271b6cecab9ca9..d5e0b6879170894cd859e1882783c798a6afeb76 100644
--- a/zh-cn/application-dev/reference/arkui-ts/ts-basic-components-texttimer.md
+++ b/zh-cn/application-dev/reference/arkui-ts/ts-basic-components-texttimer.md
@@ -6,40 +6,33 @@
>
> 该组件从API Version 8开始支持。后续版本如有新增内容,则采用上角标单独标记该内容的起始版本。
-
-
-
-
## 子组件
无
-
## 接口
TextTimer(options?: { isCountDown?: boolean, count?: number, controller?: TextTimerController })
-**参数:**
+**参数:**
| 参数名 | 参数类型 | 必填 | 参数描述 |
-| ----------- | -------- | -------- | -------- | -------- |
+| ----------- | -------- | -------- | -------- |
| isCountDown | boolean | 否 | 是否倒计时。 默认值:false |
-| count | number | 否 | 倒计时时间(isCountDown为true时生效),单位为毫秒。 - count<=0时,使用默认值为倒计时初始值。 - count>0时,count值为倒计时初始值。 默认值:60000 |
+| count | number | 否 | 倒计时时间(isCountDown为true时生效),单位为毫秒。最长不超过86400000毫秒(24小时)。 0<count<86400000时,count值为倒计时初始值。否则,使用默认值为倒计时初始值。 默认值:60000 |
| controller | [TextTimerController](#texttimercontroller) | 否 | TextTimer控制器。 |
## 属性
| 名称 | 参数类型 | 描述 |
| -------- | ---------------------- | ---------------------- |
-| format | string | 自定义格式,需至少包含一个hh、mm、ss、ms中的关键字。 默认值:'hh:mm:ss.ms' |
-
+| format | string | 自定义格式,需至少包含一个HH、mm、ss、SS中的关键字。如使用yy、MM、dd等日期格式,则使用默认值。 默认值:'HH:mm:ss.SS' |
## 事件
-| 名称 | 功能描述 |
-| -------- | -------- |
-| onTimer(event: (utc: number, elapsedTime: number) => void) | 时间文本发生变化时触发。 utc:当前显示的时间,单位为毫秒。 elapsedTime:计时器经过的时间,单位为毫秒。 |
-
+| 名称 | 功能描述 |
+| ---------------------------------------- | ---------------------------------------- |
+| onTimer(event: (utc: number, elapsedTime: number) => void) | 时间文本发生变化时触发。 utc:Linux时间戳,即自1970年1月1日起经过的毫秒数。 elapsedTime:计时器经过的时间,单位为毫秒。 |
## TextTimerController
@@ -70,7 +63,6 @@ reset()
重置计时器。
-
## 示例
```ts
@@ -79,7 +71,7 @@ reset()
@Component
struct TextTimerExample {
textTimerController: TextTimerController = new TextTimerController()
- @State format: string = 'hh:mm:ss.ms'
+ @State format: string = 'HH:mm:ss.SS'
build() {
Column() {
diff --git a/zh-cn/application-dev/reference/arkui-ts/ts-container-badge.md b/zh-cn/application-dev/reference/arkui-ts/ts-container-badge.md
index f1bc8b9ee610cc20aec1a496a8a9a44a81514a4e..6db7e8dbfb219c2538725ccb8fd908f902ccc5b0 100644
--- a/zh-cn/application-dev/reference/arkui-ts/ts-container-badge.md
+++ b/zh-cn/application-dev/reference/arkui-ts/ts-container-badge.md
@@ -6,11 +6,6 @@
> 该组件从API Version 7开始支持。后续版本如有新增内容,则采用上角标单独标记该内容的起始版本。
-## 权限列表
-
-无
-
-
## 子组件
支持单个子组件。
@@ -42,15 +37,6 @@
| position | [BadgePosition](#badgeposition枚举说明) | 否 | BadgePosition.RightTop | 设置提示点显示位置。 |
| style | [BadgeStyle](#badgestyle对象说明) | 是 | - | Badge组件可设置样式,支持设置文本颜色、尺寸、圆点颜色和尺寸。 |
-## BadgeStyle对象说明
-
-| 名称 | 类型 | 必填 | 默认值 | 描述 |
-| -------- | -------- | -------- | -------- | -------- |
-| color | [ResourceColor](ts-types.md) | 否 | Color.White | 文本颜色。 |
-| fontSize | number \| string | 否 | 10 | 文本大小。 |
-| badgeSize | number \| string | 是 | - | badge的大小。 |
-| badgeColor | [ResourceColor](ts-types.md) | 否 | Color.Red | badge的颜色。 |
-
## BadgePosition枚举说明
| 名称 | 描述 |
@@ -59,6 +45,13 @@
| Right | 圆点显示在右侧纵向居中。 |
| Left | 圆点显示在左侧纵向居中。 |
+## BadgeStyle对象说明
+| 名称 | 类型 | 必填 | 默认值 | 描述 |
+ | -------- | -------- | -------- | -------- | -------- |
+| color | [ResourceColor](ts-types.md#resourcecolor) | 否 | Color.White | 文本颜色。 |
+| fontSize | number \| string | 否 | 10 | 文本大小。 |
+| badgeSize | number \| string | 是 | - | badge的大小。 |
+| badgeColor | [ResourceColor](ts-types.md#resourcecolor) | 否 | Color.Red | badge的颜色。 |
## 示例
@@ -67,44 +60,92 @@
@Entry
@Component
struct BadgeExample {
- @State counts: number = 1
- @State message: string = 'new'
+ @State counts: number = 1;
+ @State message: string = 'new';
build() {
- Flex({ justifyContent: FlexAlign.SpaceAround }) {
- Badge({
- count: this.counts,
- maxCount: 99,
- style: { color: 0xFFFFFF, fontSize: 16, badgeSize: 20, badgeColor: Color.Red }
- }) {
- Button('message')
- .onClick(() => {
- this.counts++
- })
- .width(100).height(50).backgroundColor(0x317aff)
- }.width(100).height(50)
-
- Badge({
- value: this.message,
- style: { color: 0xFFFFFF, fontSize: 9, badgeSize: 20, badgeColor: Color.Blue }
- }) {
- Text('message')
- .width(80).height(50).fontSize(16).lineHeight(37)
- .borderRadius(10).textAlign(TextAlign.Center).backgroundColor(0xF3F4ED)
- }.width(80).height(50)
-
- Badge({
- value: ' ',
- position: BadgePosition.Right,
- style: { badgeSize: 6, badgeColor: Color.Red }
- }) {
- Text('message')
- .width(90).height(50).fontSize(16).lineHeight(37)
- .borderRadius(10).textAlign(TextAlign.Center).backgroundColor(0xF3F4ED)
- }.width(90).height(50)
- }.width('100%').margin({ top: 5 })
+ Column() {
+ Text('numberBadge').width('80%')
+ Row({ space: 10 }) {
+ // 数字上标,maxCount默认99,超过99展示99+
+ Badge({
+ count: this.counts,
+ maxCount: 99,
+ position: BadgePosition.RightTop,
+ style: { color: 0xFFFFFF, fontSize: 16, badgeSize: 20, badgeColor: Color.Red }
+ }) {
+ Button('message')
+ .onClick(() => {
+ this.counts++;
+ })
+ .width(100).height(50).backgroundColor(0x317aff)
+ }.width(100).height(50)
+
+ // 数字上标
+ Badge({
+ count: this.counts,
+ maxCount: 99,
+ position: BadgePosition.Left,
+ style: { color: 0xFFFFFF, fontSize: 16, badgeSize: 20, badgeColor: Color.Red }
+ }) {
+ Button('message')
+ .onClick(() => {
+ this.counts++;
+ })
+ .width(100).height(50).backgroundColor(0x317aff)
+ }.width(100).height(50)
+
+
+ // 数字上标
+ Badge({
+ count: this.counts,
+ maxCount: 99,
+ position: BadgePosition.Right,
+ style: { color: 0xFFFFFF, fontSize: 16, badgeSize: 20, badgeColor: Color.Red }
+ }) {
+ Button('message')
+ .onClick(() => {
+ this.counts++;
+ })
+ .width(100).height(50).backgroundColor(0x317aff)
+ }.width(100).height(50)
+ }.margin(10)
+
+ Text('stringBadge').width('80%')
+ Row({ space: 30 }) {
+ Badge({
+ value: this.message,
+ style: { color: 0xFFFFFF, fontSize: 9, badgeSize: 20, badgeColor: Color.Blue }
+ }) {
+ Text('message')
+ .width(80)
+ .height(50)
+ .fontSize(16)
+ .lineHeight(37)
+ .borderRadius(10)
+ .textAlign(TextAlign.Center)
+ .backgroundColor(0xF3F4ED)
+ }.width(80).height(50)
+
+ // value为空,设置圆点标记
+ Badge({
+ value: '',
+ position: BadgePosition.Right,
+ style: { badgeSize: 6, badgeColor: Color.Red }
+ }) {
+ Text('message')
+ .width(90)
+ .height(50)
+ .fontSize(16)
+ .lineHeight(37)
+ .borderRadius(10)
+ .textAlign(TextAlign.Center)
+ .backgroundColor(0xF3F4ED)
+ }.width(90).height(50)
+ }.margin(10)
+ }
}
}
```
-
+
diff --git a/zh-cn/application-dev/reference/arkui-ts/ts-container-column.md b/zh-cn/application-dev/reference/arkui-ts/ts-container-column.md
index 89c881153a6ecf8028938f2bd35e903d7c2a63dc..6b34c3cee54a5b1d6094505abe506a6b9e2bc00b 100644
--- a/zh-cn/application-dev/reference/arkui-ts/ts-container-column.md
+++ b/zh-cn/application-dev/reference/arkui-ts/ts-container-column.md
@@ -20,7 +20,7 @@ Column(value?: {space?: string | number})
| 参数名 | 参数类型 | 必填 | 参数描述 |
| -------- | -------- | -------- | -------- |
-| space | string \| number | 否 | 纵向布局元素间距。 默认值:0 |
+| space | string \| number | 否 | 纵向布局元素垂直方向间距。 默认值:0 |
## 属性
@@ -40,38 +40,47 @@ Column(value?: {space?: string | number})
struct ColumnExample {
build() {
Column() {
- Text('space').fontSize(9).fontColor(0xCCCCCC).width('90%')
- Column({ space: 5 }) {
- Column().width('100%').height(30).backgroundColor(0xAFEEEE)
- Column().width('100%').height(30).backgroundColor(0x00FFFF)
- }.width('90%').height(100).border({ width: 1 })
-
- Text('alignItems(Start)').fontSize(9).fontColor(0xCCCCCC).width('90%')
- Column() {
- Column().width('50%').height(30).backgroundColor(0xAFEEEE)
- Column().width('50%').height(30).backgroundColor(0x00FFFF)
- }.alignItems(HorizontalAlign.Start).width('90%').border({ width: 1 })
-
- Text('alignItems(End)').fontSize(9).fontColor(0xCCCCCC).width('90%')
- Column() {
- Column().width('50%').height(30).backgroundColor(0xAFEEEE)
- Column().width('50%').height(30).backgroundColor(0x00FFFF)
- }.alignItems(HorizontalAlign.End).width('90%').border({ width: 1 })
-
- Text('justifyContent(Center)').fontSize(9).fontColor(0xCCCCCC).width('90%')
- Column() {
- Column().width('30%').height(30).backgroundColor(0xAFEEEE)
- Column().width('30%').height(30).backgroundColor(0x00FFFF)
- }.height('15%').border({ width: 1 }).justifyContent(FlexAlign.Center)
-
- Text('justifyContent(End)').fontSize(9).fontColor(0xCCCCCC).width('90%')
- Column() {
- Column().width('30%').height(30).backgroundColor(0xAFEEEE)
- Column().width('30%').height(30).backgroundColor(0x00FFFF)
- }.height('15%').border({ width: 1 }).justifyContent(FlexAlign.End)
+ // 设置子元素垂直方向间距为5
+ Text('space').fontSize(9).fontColor(0xCCCCCC).width('90%')
+ Column({ space: 5 }) {
+ Column().width('100%').height(30).backgroundColor(0xAFEEEE)
+ Column().width('100%').height(30).backgroundColor(0x00FFFF)
+ }.width('90%').height(100).border({ width: 1 })
+
+ // 设置子元素水平方向对齐方式
+ Text('alignItems(Start)').fontSize(9).fontColor(0xCCCCCC).width('90%')
+ Column() {
+ Column().width('50%').height(30).backgroundColor(0xAFEEEE)
+ Column().width('50%').height(30).backgroundColor(0x00FFFF)
+ }.alignItems(HorizontalAlign.Start).width('90%').border({ width: 1 })
+
+ Text('alignItems(End)').fontSize(9).fontColor(0xCCCCCC).width('90%')
+ Column() {
+ Column().width('50%').height(30).backgroundColor(0xAFEEEE)
+ Column().width('50%').height(30).backgroundColor(0x00FFFF)
+ }.alignItems(HorizontalAlign.End).width('90%').border({ width: 1 })
+
+ Text('alignItems(Center)').fontSize(9).fontColor(0xCCCCCC).width('90%')
+ Column() {
+ Column().width('50%').height(30).backgroundColor(0xAFEEEE)
+ Column().width('50%').height(30).backgroundColor(0x00FFFF)
+ }.alignItems(HorizontalAlign.Center).width('90%').border({ width: 1 })
+
+ // 设置子元素垂直方向的对齐方式
+ Text('justifyContent(Center)').fontSize(9).fontColor(0xCCCCCC).width('90%')
+ Column() {
+ Column().width('90%').height(30).backgroundColor(0xAFEEEE)
+ Column().width('90%').height(30).backgroundColor(0x00FFFF)
+ }.height(100).border({ width: 1 }).justifyContent(FlexAlign.Center)
+
+ Text('justifyContent(End)').fontSize(9).fontColor(0xCCCCCC).width('90%')
+ Column() {
+ Column().width('90%').height(30).backgroundColor(0xAFEEEE)
+ Column().width('90%').height(30).backgroundColor(0x00FFFF)
+ }.height(100).border({ width: 1 }).justifyContent(FlexAlign.End)
}.width('100%').padding({ top: 5 })
}
}
```
-
+
diff --git a/zh-cn/application-dev/reference/arkui-ts/ts-container-columnsplit.md b/zh-cn/application-dev/reference/arkui-ts/ts-container-columnsplit.md
index 1173d54869b5dbf9b89a9cddc186565ed317b01b..dd96432e8b7f5368ad47c9fc9b1823a362a2b75c 100644
--- a/zh-cn/application-dev/reference/arkui-ts/ts-container-columnsplit.md
+++ b/zh-cn/application-dev/reference/arkui-ts/ts-container-columnsplit.md
@@ -1,15 +1,10 @@
# ColumnSplit
-> **说明:**
-> 该组件从API Version 7开始支持。后续版本如有新增内容,则采用上角标单独标记该内容的起始版本。
-
-
将子组件纵向布局,并在每个子组件之间插入一根横向的分割线。
+> **说明:**
+> 该组件从API Version 7开始支持。后续版本如有新增内容,则采用上角标单独标记该内容的起始版本。
-## 权限列表
-
-无
## 子组件
@@ -30,7 +25,8 @@ ColumnSplit()
> **说明:**
> 与RowSplit相同,ColumnSplit的分割线最小能拖动到刚好包含子组件。
-
+>
+> 在真机中查看拖动效果,预览器中不支持拖动。
## 示例
@@ -49,7 +45,7 @@ struct ColumnSplitExample {
Text('4').width('100%').height(50).backgroundColor(0xD2B48C).textAlign(TextAlign.Center)
Text('5').width('100%').height(50).backgroundColor(0xF5DEB3).textAlign(TextAlign.Center)
}
- .resizeable(true)
+ .resizeable(true) // 可拖动
.width('90%').height('60%')
}.width('100%')
}
diff --git a/zh-cn/application-dev/reference/arkui-ts/ts-container-counter.md b/zh-cn/application-dev/reference/arkui-ts/ts-container-counter.md
index 6f94eece93ee10164499d401438263123f7ea06f..27fbd173f704132eb302d27c2191d258761e8533 100644
--- a/zh-cn/application-dev/reference/arkui-ts/ts-container-counter.md
+++ b/zh-cn/application-dev/reference/arkui-ts/ts-container-counter.md
@@ -1,15 +1,13 @@
# Counter
+计数器组件,提供相应的增加或者减少的计数操作。
+
> **说明:**
> 该组件从API Version 7开始支持。后续版本如有新增内容,则采用上角标单独标记该内容的起始版本。
-计数器组件,提供相应的增加或者减少的计数操作。
-
-## 权限列表
-无
## 子组件
diff --git a/zh-cn/application-dev/reference/arkui-ts/ts-container-navigator.md b/zh-cn/application-dev/reference/arkui-ts/ts-container-navigator.md
index 0faa4e3a99be989f94c2f0a84d25d6435735663a..895184056c41747c9a5f970c89882c7cf4b7cc6e 100644
--- a/zh-cn/application-dev/reference/arkui-ts/ts-container-navigator.md
+++ b/zh-cn/application-dev/reference/arkui-ts/ts-container-navigator.md
@@ -20,8 +20,8 @@ Navigator(value?: {target: string, type?: NavigationType})
| 参数名 | 参数类型 | 必填 | 参数描述 |
| ------ | -------------- | ---- | ---------------------------------------------- |
-| target | string | 是 | 指定跳转目标页面的路径。 |
-| type | NavigationType | 否 | 指定路由方式。 默认值:NavigationType.Push |
+| target | string | 是 | 指定跳转目标页面的路径。 |
+| type | [NavigationType](#navigationtype枚举说明) | 否 | 指定路由方式。 默认值:NavigationType.Push |
## NavigationType枚举说明
@@ -37,9 +37,9 @@ Navigator(value?: {target: string, type?: NavigationType})
| 名称 | 参数 | 描述 |
| ------ | ------- | ------------------------------------------------------------ |
| active | boolean | 当前路由组件是否处于激活状态,处于激活状态时,会生效相应的路由操作。 |
-| params | object | 跳转时要同时传递到目标页面的数据,可在目标页面使用router.getParams()获得。 |
-| target | string | 设置跳转目标页面的路径。 |
-| type | NavigationType | 设置路由方式。 默认值:NavigationType.Push |
+| params | object | 跳转时要同时传递到目标页面的数据,可在目标页面使用[router.getParams()](../apis/js-api-router.md#routergetparams)获得。 |
+| target | string | 设置跳转目标页面的路径。 目标页面需加入main_pages.json文件中。 |
+| type | [NavigationType](#navigationtype枚举说明) | 设置路由方式。 默认值:NavigationType.Push |
## 示例
@@ -49,7 +49,7 @@ Navigator(value?: {target: string, type?: NavigationType})
@Entry
@Component
struct NavigatorExample {
- @State active: boolean = false
+ @State active: boolean = false;
@State Text: object = {name: 'news'}
build() {
@@ -57,13 +57,13 @@ struct NavigatorExample {
Navigator({ target: 'pages/container/navigator/Detail', type: NavigationType.Push }) {
Text('Go to ' + this.Text['name'] + ' page')
.width('100%').textAlign(TextAlign.Center)
- }.params({ text: this.Text })
+ }.params({ text: this.Text }) // 传参数到Detail页面
Navigator() {
Text('Back to previous page').width('100%').textAlign(TextAlign.Center)
}.active(this.active)
.onClick(() => {
- this.active = true
+ this.active = true;
})
}.height(150).width(350).padding(35)
}
@@ -72,12 +72,13 @@ struct NavigatorExample {
```ts
// Detail.ets
-import router from '@system.router'
+import router from '@ohos.router'
@Entry
@Component
struct DetailExample {
- @State text: any = router.getParams().text
+ // 接收Navigator.ets的传参
+ @State text: any = router.getParams().text;
build() {
Flex({ direction: FlexDirection.Column, alignItems: ItemAlign.Start, justifyContent: FlexAlign.SpaceBetween }) {
diff --git a/zh-cn/application-dev/reference/arkui-ts/ts-container-panel.md b/zh-cn/application-dev/reference/arkui-ts/ts-container-panel.md
index b59cf14a8370853483539d53b73e410c520b28ae..9c0dd645c5a809fa4007e964c2e72932bc35e727 100644
--- a/zh-cn/application-dev/reference/arkui-ts/ts-container-panel.md
+++ b/zh-cn/application-dev/reference/arkui-ts/ts-container-panel.md
@@ -27,8 +27,8 @@ Panel(show: boolean)
| 名称 | 参数类型 | 描述 |
| -------- | -------- | -------- |
-| type | PanelType | 设置可滑动面板的类型。 默认值:PanelType.Foldable |
-| mode | PanelMode | 设置可滑动面板的初始状态。 |
+| type | [PanelType](#paneltype枚举说明) | 设置可滑动面板的类型。 默认值:PanelType.Foldable |
+| mode | [PanelMode](#panelmode枚举说明) | 设置可滑动面板的初始状态。 |
| dragBar | boolean | 设置是否存在dragbar,true表示存在,false表示不存在。 默认值:true |
| fullHeight | string \| number | 指定PanelMode.Full状态下的高度。 |
| halfHeight | string \| number | 指定PanelMode.Half状态下的高度,默认为屏幕尺寸的一半。 |
diff --git a/zh-cn/application-dev/reference/arkui-ts/ts-container-refresh.md b/zh-cn/application-dev/reference/arkui-ts/ts-container-refresh.md
index d1849a00c4bf3ced1ec7d953c60303b16ea5bd09..d03a2a041999f38c12d8dad5d2cd1f70e8656a7d 100644
--- a/zh-cn/application-dev/reference/arkui-ts/ts-container-refresh.md
+++ b/zh-cn/application-dev/reference/arkui-ts/ts-container-refresh.md
@@ -29,7 +29,7 @@ Refresh\(value: \{ refreshing: boolean, offset?: number | string , fr
| 名称 | 描述 |
| -------- | -------- |
-| onStateChange(callback: (state: RefreshStatus) => void)| 当前刷新状态变更时,触发回调。 - state:刷新状态。 |
+| onStateChange(callback: (state: [RefreshStatus](#refreshstatus枚举说明)) => void)| 当前刷新状态变更时,触发回调。 - state:刷新状态。 |
| onRefreshing(callback: () => void)| 进入刷新状态时触发回调。 |
## RefreshStatus枚举说明
diff --git a/zh-cn/application-dev/reference/arkui-ts/ts-container-relativecontainer.md b/zh-cn/application-dev/reference/arkui-ts/ts-container-relativecontainer.md
index 6b55112ff56f38e83372fb7f319f6e99eb440c2b..3d46fe5c2ead4d6359b428220f6f75928aa1fe8d 100644
--- a/zh-cn/application-dev/reference/arkui-ts/ts-container-relativecontainer.md
+++ b/zh-cn/application-dev/reference/arkui-ts/ts-container-relativecontainer.md
@@ -10,22 +10,18 @@
## 规则说明
* 容器内子组件区分水平方向,垂直方向:
- * 水平方向为left, middle, right,对应容器的HorizontalAlign.Start, HorizontalAlign.Center, HorizontalAlign.End
- * 垂直方向为top, center, bottom,对应容器的VerticalAlign.Top, VerticalAlign.Center, VerticalAlign.Bottom
+ * 水平方向为left, middle, right,对应容器的HorizontalAlign.Start, HorizontalAlign.Center, HorizontalAlign.End。
+ * 垂直方向为top, center, bottom,对应容器的VerticalAlign.Top, VerticalAlign.Center, VerticalAlign.Bottom。
* 子组件可以将容器或者其他子组件设为锚点:
- * 参与相对布局的容器内组件必须设置id,容器id固定为__container__
- * 无id的子组件位置设置默认为容器左上方
- * 此子组件某一方向上的三个位置可以将容器或其他子组件的同方向三个位置为锚点,同方向上两个以上位置设置锚点以后会跳过第三个
- * 同方向上两个以上位置设置锚点时此子组件额外设置width,height不生效
- * 对齐后需要额外偏移可设置offset
+ * 参与相对布局的容器内组件必须设置id,容器RelativeContainer的id固定为'__container__'。
+ * 无id的子组件位置设置默认为容器左上方。
+ * 此子组件某一方向上的三个位置可以将容器或其他子组件的同方向三个位置为锚点,同方向上两个以上位置设置锚点以后会跳过第三个。
+ * 同方向上两个以上位置设置锚点时此子组件额外设置width,height不生效。
+ * 对齐后需要额外偏移可设置offset。
* 特殊情况
- * 互相依赖,环形依赖时容器内子组件全部不绘制
- * 同方向上两个以上位置设置锚点但锚点位置逆序时此子组件大小为0,即不绘制
-
-## 权限列表
-
-无
-
+ * 互相依赖,环形依赖时容器内子组件全部不绘制。
+ * 同方向上两个以上位置设置锚点但锚点位置逆序时此子组件大小为0,即不绘制。
+
## 子组件
@@ -42,49 +38,68 @@ RelativeContainer()
@Entry
@Component
struct Index {
-
build() {
Row() {
- Button("Extra button").width(100).height(50)
- RelativeContainer() {
- Button("Button 1").width(120).height(30)
- .alignRules({
- middle: { anchor: "__container__", align: HorizontalAlign.Center },
- })
- .id("bt1").borderWidth(1).borderColor(Color.Black)
- Text("This is text 2").fontSize(20).padding(10)
- .alignRules({
- bottom: { anchor: "__container__", align: VerticalAlign.Bottom },
- top: { anchor: "bt1", align: VerticalAlign.Bottom },
- right:{ anchor: "bt1", align: HorizontalAlign.Center }
- }).id("tx2").borderWidth(1).borderColor(Color.Black).height(30)
-
- LoadingProgress().color(Color.Blue)
- .alignRules({
- left: { anchor: "bt1", align: HorizontalAlign.End },
- top: { anchor: "tx2", align: VerticalAlign.Center },
- bottom: { anchor: "__container__", align: VerticalAlign.Bottom }
- }).id("lp3").borderWidth(1).borderColor(Color.Black)
- .height(30).width(30)
-
- Gauge({ value: 50, min: 0, max: 100 })
- .startAngle(210).endAngle(150)
- .colors([[0x317AF7, 1], [0x5BA854, 1], [0xE08C3A, 1], [0x9C554B, 1], [0xD94838, 1]])
- .strokeWidth(20)
- .width(50).height(50)
- .alignRules({
- left: { anchor: "tx2", align: HorizontalAlign.End },
- right:{ anchor: "__container__", align: HorizontalAlign.End },
- top: { anchor: "__container__", align: VerticalAlign.Top },
- bottom: { anchor: "lp3", align: VerticalAlign.Top }
- }).id("g4").borderWidth(1).borderColor(Color.Black)
-
- }
- .width(200).height(200)
- .backgroundColor(Color.Orange)
-
- }
- .height('100%')
+ Button("Extra button").width(100).height(50)
+
+ // 外层容器的id默认为为'__container__'
+ RelativeContainer() {
+ Button("Button 1")
+ .width(120)
+ .height(30)
+ .alignRules({
+ middle: { anchor: "__container__", align: HorizontalAlign.Center }, // 水平方向上,组件中部与容器中间对齐,即组件在容器中水平居中
+ })
+ .id("bt1") // id设置为bt1
+ .borderWidth(1)
+ .borderColor(Color.Black)
+
+ Text("This is text 2")
+ .fontSize(20)
+ .padding(10)
+ .borderWidth(1)
+ .borderColor(Color.Black)
+ .height(30)
+ .id("tx2") // id设置为tx2
+ .alignRules({
+ bottom: { anchor: "__container__", align: VerticalAlign.Bottom }, // 组件下边与容器下边对齐
+ top: { anchor: "bt1", align: VerticalAlign.Bottom }, // 组件上边与button1底部对齐
+ right: { anchor: "bt1", align: HorizontalAlign.Center } // 组件右侧与button1中间点对齐
+ })
+
+ LoadingProgress()
+ .color(Color.Blue)
+ .borderWidth(1)
+ .borderColor(Color.Black)
+ .height(30)
+ .width(30)
+ .id("lp3") // id设置为lp3
+ .alignRules({
+ left: { anchor: "bt1", align: HorizontalAlign.End }, // 组件左边对齐容器bt1的右边
+ top: { anchor: "tx2", align: VerticalAlign.Center }, // 组件上边对齐容器tx2的中间
+ bottom: { anchor: "__container__", align: VerticalAlign.Bottom } // 组件下边对齐最外层容器的底边
+ })
+
+ Gauge({ value: 50, min: 0, max: 100 })
+ .startAngle(210)
+ .endAngle(150)
+ .colors([[0x317AF7, 1], [0x5BA854, 1], [0xE08C3A, 1], [0x9C554B, 1], [0xD94838, 1]])
+ .strokeWidth(20)
+ .width(50)
+ .height(50)
+ .alignRules({
+ left: { anchor: "tx2", align: HorizontalAlign.End }, // 组件左边对齐容器tx2的右边
+ right: { anchor: "__container__", align: HorizontalAlign.End }, // 组件右边对齐最外层容器的右边
+ top: { anchor: "__container__", align: VerticalAlign.Top }, // 组件上边对齐最外层容器的上边
+ bottom: { anchor: "lp3", align: VerticalAlign.Top } // 组件下边对齐容器lp3的上边
+ })
+ .id("g4")
+ .borderWidth(1)
+ .borderColor(Color.Black)
+ }
+ .width(200).height(200)
+ .backgroundColor(Color.Orange)
+ }.height('100%')
}
}
```
diff --git a/zh-cn/application-dev/reference/arkui-ts/ts-container-row.md b/zh-cn/application-dev/reference/arkui-ts/ts-container-row.md
index 54c51fe6288d6b11bc989f0a1d5e0af02c3ec25f..ba536c338ffb88ce73f1a0619d722f8b1c2743c0 100644
--- a/zh-cn/application-dev/reference/arkui-ts/ts-container-row.md
+++ b/zh-cn/application-dev/reference/arkui-ts/ts-container-row.md
@@ -40,38 +40,41 @@ Row(value?:{space?: number | string })
struct RowExample {
build() {
Column({ space: 5 }) {
+ // 设置子组件水平方向的间距为5
Text('space').fontSize(9).fontColor(0xCCCCCC).width('90%')
- Row({ space: 5 }) {
- Row().width('30%').height(50).backgroundColor(0xAFEEEE)
- Row().width('30%').height(50).backgroundColor(0x00FFFF)
- }.width('90%').height(107).border({ width: 1 })
-
- Text('alignItems(Top)').fontSize(9).fontColor(0xCCCCCC).width('90%')
- Row() {
- Row().width('30%').height(50).backgroundColor(0xAFEEEE)
- Row().width('30%').height(50).backgroundColor(0x00FFFF)
- }.alignItems(VerticalAlign.Top).height('15%').border({ width: 1 })
-
- Text('alignItems(Center)').fontSize(9).fontColor(0xCCCCCC).width('90%')
- Row() {
- Row().width('30%').height(50).backgroundColor(0xAFEEEE)
- Row().width('30%').height(50).backgroundColor(0x00FFFF)
- }.alignItems(VerticalAlign.Center).height('15%').border({ width: 1 })
-
- Text('justifyContent(End)').fontSize(9).fontColor(0xCCCCCC).width('90%')
- Row() {
- Row().width('30%').height(50).backgroundColor(0xAFEEEE)
- Row().width('30%').height(50).backgroundColor(0x00FFFF)
- }.width('90%').border({ width: 1 }).justifyContent(FlexAlign.End)
-
- Text('justifyContent(Center)').fontSize(9).fontColor(0xCCCCCC).width('90%')
- Row() {
- Row().width('30%').height(50).backgroundColor(0xAFEEEE)
- Row().width('30%').height(50).backgroundColor(0x00FFFF)
- }.width('90%').border({ width: 1 }).justifyContent(FlexAlign.Center)
+ Row({ space: 5 }) {
+ Row().width('30%').height(50).backgroundColor(0xAFEEEE)
+ Row().width('30%').height(50).backgroundColor(0x00FFFF)
+ }.width('90%').height(107).border({ width: 1 })
+
+ // 设置子元素垂直方向对齐方式
+ Text('alignItems(Bottom)').fontSize(9).fontColor(0xCCCCCC).width('90%')
+ Row() {
+ Row().width('30%').height(50).backgroundColor(0xAFEEEE)
+ Row().width('30%').height(50).backgroundColor(0x00FFFF)
+ }.width('90%').alignItems(VerticalAlign.Bottom).height('15%').border({ width: 1 })
+
+ Text('alignItems(Center)').fontSize(9).fontColor(0xCCCCCC).width('90%')
+ Row() {
+ Row().width('30%').height(50).backgroundColor(0xAFEEEE)
+ Row().width('30%').height(50).backgroundColor(0x00FFFF)
+ }.width('90%').alignItems(VerticalAlign.Center).height('15%').border({ width: 1 })
+
+ // 设置子元素水平方向对齐方式
+ Text('justifyContent(End)').fontSize(9).fontColor(0xCCCCCC).width('90%')
+ Row() {
+ Row().width('30%').height(50).backgroundColor(0xAFEEEE)
+ Row().width('30%').height(50).backgroundColor(0x00FFFF)
+ }.width('90%').border({ width: 1 }).justifyContent(FlexAlign.End)
+
+ Text('justifyContent(Center)').fontSize(9).fontColor(0xCCCCCC).width('90%')
+ Row() {
+ Row().width('30%').height(50).backgroundColor(0xAFEEEE)
+ Row().width('30%').height(50).backgroundColor(0x00FFFF)
+ }.width('90%').border({ width: 1 }).justifyContent(FlexAlign.Center)
}.width('100%')
}
}
```
-
+
diff --git a/zh-cn/application-dev/reference/arkui-ts/ts-container-rowsplit.md b/zh-cn/application-dev/reference/arkui-ts/ts-container-rowsplit.md
index 0cec1a56838513830296eb80e4860ffde3ddb795..ae460606c107c01221789228b458b7160e66d93a 100644
--- a/zh-cn/application-dev/reference/arkui-ts/ts-container-rowsplit.md
+++ b/zh-cn/application-dev/reference/arkui-ts/ts-container-rowsplit.md
@@ -7,10 +7,6 @@
将子组件横向布局,并在每个子组件之间插入一根纵向的分割线。
-## 权限列表
-
-无
-
## 子组件
@@ -30,6 +26,8 @@ RowSplit()
> **说明:**
> RowSplit的分割线最小能拖动到刚好包含子组件。
+>
+> 在真机中查看拖动效果,预览器中不支持拖动。
## 示例
diff --git a/zh-cn/application-dev/reference/arkui-ts/ts-container-scroll.md b/zh-cn/application-dev/reference/arkui-ts/ts-container-scroll.md
index 4768ef64f18bc63f33b96c1cd1a927ad46585afd..e0a02896e93d84a2134a740731beae086e0f71d3 100644
--- a/zh-cn/application-dev/reference/arkui-ts/ts-container-scroll.md
+++ b/zh-cn/application-dev/reference/arkui-ts/ts-container-scroll.md
@@ -24,9 +24,9 @@ Scroll(scroller?: Scroller)
| 名称 | 参数类型 | 描述 |
| -------------- | ---------------------------------------- | --------- |
-| scrollable | ScrollDirection | 设置滚动方向。 默认值:ScrollDirection.Vertical |
+| scrollable | [ScrollDirection](#scrolldirection枚举说明) | 设置滚动方向。 默认值:ScrollDirection.Vertical |
| scrollBar | [BarState](ts-appendix-enums.md#barstate) | 设置滚动条状态。 默认值:BarState.Off |
-| scrollBarColor | string \| number \| Color | 设置滚动条的颜色。 |
+| scrollBarColor | string \| number \| [Color](ts-appendix-enums.md#color) | 设置滚动条的颜色。 |
| scrollBarWidth | string \| number | 设置滚动条的宽度。 |
| edgeEffect | [EdgeEffect](ts-appendix-enums.md#edgeeffect) | 设置滑动效果,目前支持的滑动效果参见EdgeEffect的枚举说明。 默认值:EdgeEffect.None |
@@ -161,14 +161,15 @@ scrollBy(dx: Length, dy: Length): void
## 示例
+### 示例1
```ts
// xxx.ets
@Entry
@Component
struct ScrollExample {
- scroller: Scroller = new Scroller()
- private arr: number[] = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
+ scroller: Scroller = new Scroller();
+ private arr: number[] = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9];
build() {
Stack({ alignContent: Alignment.TopStart }) {
@@ -186,38 +187,39 @@ struct ScrollExample {
}, item => item)
}.width('100%')
}
- .scrollable(ScrollDirection.Vertical)
- .scrollBar(BarState.On)
- .scrollBarColor(Color.Gray)
- .scrollBarWidth(30)
+ .scrollable(ScrollDirection.Vertical) // 滚动方向纵向
+ .scrollBar(BarState.On) // 滚动条常驻显示
+ .scrollBarColor(Color.Gray) // 滚动条颜色
+ .scrollBarWidth(30) // 滚动条宽度
+ .edgeEffect(EdgeEffect.None)
.onScroll((xOffset: number, yOffset: number) => {
- console.info(xOffset + ' ' + yOffset)
+ console.info(xOffset + ' ' + yOffset);
})
.onScrollEdge((side: Edge) => {
- console.info('To the edge')
+ console.info('To the edge');
})
.onScrollEnd(() => {
- console.info('Scroll Stop')
+ console.info('Scroll Stop');
})
-
+
Button('scroll 150')
.onClick(() => { // 点击后下滑指定距离150.0vp
- this.scroller.scrollBy(0,150)
+ this.scroller.scrollBy(0,150);
})
.margin({ top: 10, left: 20 })
Button('scroll 100')
.onClick(() => { // 点击后滑动到指定位置,即下滑100.0vp的距离
- this.scroller.scrollTo({ xOffset: 0, yOffset: this.scroller.currentOffset().yOffset + 100 })
+ this.scroller.scrollTo({ xOffset: 0, yOffset: this.scroller.currentOffset().yOffset + 100 });
})
.margin({ top: 60, left: 20 })
Button('back top')
.onClick(() => { // 点击后回到顶部
- this.scroller.scrollEdge(Edge.Top)
+ this.scroller.scrollEdge(Edge.Top);
})
.margin({ top: 110, left: 20 })
Button('next page')
.onClick(() => { // 点击后滑到下一页
- this.scroller.scrollPage({ next: true })
+ this.scroller.scrollPage({ next: true });
})
.margin({ top: 170, left: 20 })
}.width('100%').height('100%').backgroundColor(0xDCDCDC)
@@ -227,14 +229,14 @@ struct ScrollExample {

-
+### 示例2
```ts
@Entry
@Component
struct NestedScroll {
- @State listPosition: number = 0 // 0代表滚动到List顶部,1代表中间值,2代表滚动到List底部。
- private arr: number[] = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
- private scroller: Scroller = new Scroller()
+ @State listPosition: number = 0; // 0代表滚动到List顶部,1代表中间值,2代表滚动到List底部。
+ private arr: number[] = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10];
+ private scroller: Scroller = new Scroller();
build() {
Flex() {
@@ -255,18 +257,18 @@ struct NestedScroll {
}
.width("100%").height("50%").edgeEffect(EdgeEffect.None)
.onReachStart(() => {
- this.listPosition = 0
+ this.listPosition = 0;
})
.onReachEnd(() => {
- this.listPosition = 2
+ this.listPosition = 2;
})
.onScrollBegin((dx: number, dy: number) => {
if ((this.listPosition == 0 && dy >= 0) || (this.listPosition == 2 && dy <= 0)) {
- this.scroller.scrollBy(0, -dy)
- return { dxRemain: dx, dyRemain: 0 }
+ this.scroller.scrollBy(0, -dy);
+ return { dxRemain: dx, dyRemain: 0 };
}
this.listPosition = 1;
- return { dxRemain: dx, dyRemain: dy }
+ return { dxRemain: dx, dyRemain: dy };
})
Text("Scroll Area")
diff --git a/zh-cn/application-dev/reference/arkui-ts/ts-universal-attributes-background.md b/zh-cn/application-dev/reference/arkui-ts/ts-universal-attributes-background.md
index 7e13c03f21973de1f5d3efeeb4d321f3109ff430..7213e77d845a93e31e123014b397b814d6b897e5 100644
--- a/zh-cn/application-dev/reference/arkui-ts/ts-universal-attributes-background.md
+++ b/zh-cn/application-dev/reference/arkui-ts/ts-universal-attributes-background.md
@@ -10,7 +10,7 @@
| 名称 | 参数类型 | 描述 |
| -------- | -------- | -------- |
-| backgroundColor | [ResourceColor](ts-types.md) | 设置组件的背景色。 |
+| backgroundColor | [ResourceColor](ts-types.md#resourcecolor) | 设置组件的背景色。 |
| backgroundImage | src: [ResourceStr](ts-types.md#resourcestr), repeat?: [ImageRepeat](ts-appendix-enums.md#imagerepeat) | src:图片地址,支持网络图片资源和本地图片资源地址(不支持svg类型的图片)。 repeat:设置背景图片的重复样式,默认不重复。 |
| backgroundImageSize | { width?: [Length](ts-types.md#length), height?: [Length](ts-types.md#length) } \| [ImageSize](ts-appendix-enums.md#imagesize) | 设置背景图像的高度和宽度。当输入为{width: Length, height: Length}对象时,如果只设置一个属性,则第二个属性保持图片原始宽高比进行调整。默认保持原图的比例不变。 默认值:ImageSize.Auto |
| backgroundImagePosition | [Position](ts-types.md#position8) \| [Alignment](ts-appendix-enums.md#alignment) | 设置背景图在组件中显示位置。 默认值: { x: 0, y: 0 } |
diff --git a/zh-cn/application-dev/reference/arkui-ts/ts-universal-attributes-border-image.md b/zh-cn/application-dev/reference/arkui-ts/ts-universal-attributes-border-image.md
index f41094b9cdbd4e67ced835979abdda515cc245b2..574b3191a8a64b5d67f2e5bd17408e6b71e7f72c 100644
--- a/zh-cn/application-dev/reference/arkui-ts/ts-universal-attributes-border-image.md
+++ b/zh-cn/application-dev/reference/arkui-ts/ts-universal-attributes-border-image.md
@@ -10,17 +10,17 @@
| 名称 | 参数类型 | 描述 |
| ---------- | ---------------------------------------- | --------------------------------------- |
-| borderImage | BorderImageOption | 图片边框或者渐变色边框设置接口。 |
+| borderImage | [BorderImageOption](#borderimageoption对象说明) | 图片边框或者渐变色边框设置接口。 |
## BorderImageOption对象说明
| 名称 | 类型 | 描述 |
| ---------- | ---------------------------------------- | --------------------------------------- |
| source | string \| [Resource](ts-types.md#resource) \| [linearGradient](ts-universal-attributes-gradient-color.md) | 边框图源或者渐变色设置。 |
-| slice | [Length](ts-types.md#length)\| [EdgeWidths](ts-types.md#edgewidths9) | 设置图片边框切割宽度。 默认值:0 |
-| width | [Length](ts-types.md#length)\| [EdgeWidths](ts-types.md#edgewidths9) | 设置图片边框宽度。 默认值:0 |
-| outset | [Length](ts-types.md#length)\| [EdgeWidths](ts-types.md#edgewidths9) | 设置边框图片向外延伸距离。 默认值:0 |
-| RepeatMode | RepeatMode | 设置边框图片的重复方式。 默认值:RepeatMode.Stretch |
+| slice | [Length](ts-types.md#length) \| [EdgeWidths](ts-types.md#edgewidths9) | 设置图片边框切割宽度。 默认值:0 |
+| width | [Length](ts-types.md#length) \| [EdgeWidths](ts-types.md#edgewidths9) | 设置图片边框宽度。 默认值:0 |
+| outset | [Length](ts-types.md#length) \| [EdgeWidths](ts-types.md#edgewidths9) | 设置边框图片向外延伸距离。 默认值:0 |
+| repeat | [RepeatMode](#repeatmode枚举说明) | 设置边框图片的重复方式。 默认值:RepeatMode.Stretch |
| fill | boolean | 设置边框图片中心填充。 默认值:false |
@@ -45,7 +45,7 @@ struct Index {
build() {
Row() {
Column() {
- Text('This is\nborderImage.').textAlign(TextAlign.Center)
+ Text('This is borderImage.').textAlign(TextAlign.Center)
.borderImage({
source: "borderOrigin.png",
slice: {top:"31%", bottom:"31%", left:"31%", right:"31%"},
@@ -53,7 +53,7 @@ struct Index {
outset: {top:"5px", bottom:"5px", left:"5px", right:"5px"},
repeat: RepeatMode.Repeat,
fill: false
- });
+ })
}
.width('100%')
}
@@ -70,20 +70,21 @@ struct Index {
@Entry
@Component
struct Index {
-
build() {
Row() {
Column() {
- Text('This is\ngradient color.').textAlign(TextAlign.Center)
+ Text('This is gradient color.').textAlign(TextAlign.Center)
.borderImage({
- source: {angle:90,
+ source: {
+ angle: 90,
direction: GradientDirection.Left,
- colors: [[0xAEE1E1, 0.0], [0xD3E0DC, 0.3], [0xFCD1D1, 1.0]]},
- slice: {top:10, bottom:10, left:10, right:10},
- width: {top:"10px", bottom:"10px", left: "10px", right:"10px"},
+ colors: [[0xAEE1E1, 0.0], [0xD3E0DC, 0.3], [0xFCD1D1, 1.0]]
+ },
+ slice: { top: 10, bottom: 10, left: 10, right: 10 },
+ width: { top: "10px", bottom: "10px", left: "10px", right: "10px" },
repeat: RepeatMode.Stretch,
fill: false
- });
+ })
}
.width('100%')
}
diff --git a/zh-cn/application-dev/reference/arkui-ts/ts-universal-attributes-border.md b/zh-cn/application-dev/reference/arkui-ts/ts-universal-attributes-border.md
index 217c45b29fbc6cf69244a48441473a163808aa4a..e4861b5876a42bbd9b0c5367d111661358eb8512 100644
--- a/zh-cn/application-dev/reference/arkui-ts/ts-universal-attributes-border.md
+++ b/zh-cn/application-dev/reference/arkui-ts/ts-universal-attributes-border.md
@@ -13,11 +13,11 @@
| 名称 | 参数类型 | 描述 |
| ------------ | ------------------------------------------------------------ | ------------------------------------------------------------ |
-| border | { width?: [Length](ts-types.md#length) \| EdgeWidths9+, color?: [ResourceColor](ts-types.md#resourcecolor) \| EdgeColors9+, radius?: [Length](ts-types.md#length) \| BorderRadiuses9+, style?: [BorderStyle](ts-appendix-enums.md#borderstyle) \| EdgeStyles9+ } | 统一边框样式设置接口。 - width:设置边框宽度。 - color:设置边框颜色。 - radius:设置边框圆角半径。 - style:设置边框样式。 |
-| borderStyle | [BorderStyle](ts-appendix-enums.md#borderstyle) \| EdgeStyles9+ | 设置元素的边框样式。 默认值:BorderStyle.Solid |
-| borderWidth | [Length](ts-types.md#length) \| EdgeWidths9+ | 设置元素的边框宽度,不支持百分比。 |
-| borderColor | [ResourceColor](ts-types.md#resourcecolor) \| EdgeColors9+ | 设置元素的边框颜色。 |
-| borderRadius | [Length](ts-types.md#length) \| BorderRadiuses9+ | 设置元素的边框圆角半径,不支持百分比。 |
+| border | { width?: [Length](ts-types.md#length) \| [EdgeWidths](#edgewidths9对象说明)9+, color?: [ResourceColor](ts-types.md#resourcecolor) \| [EdgeColors](#edgecolors9对象说明)9+, radius?: [Length](ts-types.md#length) \| [BorderRadiuses](#borderradiuses9对象说明)9+, style?: [BorderStyle](ts-appendix-enums.md#borderstyle) \| [EdgeStyles](#edgestyles9对象说明)9+ } | 统一边框样式设置接口。 - width:设置边框宽度。 - color:设置边框颜色。 - radius:设置边框圆角半径。 - style:设置边框样式。 |
+| borderStyle | [BorderStyle](ts-appendix-enums.md#borderstyle) \| [EdgeStyles](#edgestyles9对象说明)9+ | 设置元素的边框样式。 默认值:BorderStyle.Solid |
+| borderWidth | [Length](ts-types.md#length) \| [EdgeWidths](#edgewidths9对象说明)9+ | 设置元素的边框宽度,不支持百分比。 |
+| borderColor | [ResourceColor](ts-types.md#resourcecolor) \| [EdgeColors](#edgecolors9对象说明)9+ | 设置元素的边框颜色。 |
+| borderRadius | [Length](ts-types.md#length) \| [BorderRadiuses](#borderradiuses9对象说明)9+ | 设置元素的边框圆角半径,不支持百分比。 |
## EdgeWidths9+对象说明
@@ -70,19 +70,19 @@
@Entry
@Component
struct BorderExample {
-
build() {
Column() {
Flex({ justifyContent: FlexAlign.SpaceAround, alignItems: ItemAlign.Center }) {
// 线段
Text('dashed')
- .borderStyle(BorderStyle.Dashed).borderWidth(5).borderColor(0xAFEEEE).borderRadius(10)
+ .borderStyle(BorderStyle.Dashed).borderWidth(5).borderColor(0xAFEEEE).borderRadius(10)
.width(120).height(120).textAlign(TextAlign.Center).fontSize(16)
// 点线
Text('dotted')
.border({ width: 5, color: 0x317AF7, radius: 10, style: BorderStyle.Dotted })
.width(120).height(120).textAlign(TextAlign.Center).fontSize(16)
}.width('100%').height(150)
+
Text('.border')
.fontSize(50)
.width(300)
@@ -92,12 +92,12 @@ struct BorderExample {
color: { left: '#e3bbbb', right: Color.Blue, top: Color.Red, bottom: Color.Green },
radius: { topLeft: 10, topRight: 20, bottomLeft: 40, bottomRight: 80 },
style: {
- left: BorderStyle.Dotted,
- right: BorderStyle.Dotted,
- top: BorderStyle.Solid,
- bottom: BorderStyle.Dashed
+ left: BorderStyle.Dotted,
+ right: BorderStyle.Dotted,
+ top: BorderStyle.Solid,
+ bottom: BorderStyle.Dashed
}
- }).textAlign(TextAlign.Center)
+ }).textAlign(TextAlign.Center)
}
}
}
diff --git a/zh-cn/application-dev/reference/arkui-ts/ts-universal-attributes-component-id.md b/zh-cn/application-dev/reference/arkui-ts/ts-universal-attributes-component-id.md
index 74c6d1bce40e91a4f1f11c38fa35fc0d5a833b8c..9f43f0a9139c4489a313bdf3a208dad2d1fee6d2 100644
--- a/zh-cn/application-dev/reference/arkui-ts/ts-universal-attributes-component-id.md
+++ b/zh-cn/application-dev/reference/arkui-ts/ts-universal-attributes-component-id.md
@@ -77,7 +77,7 @@ sendTouchEvent(event: TouchObject): boolean
| 参数 | 类型 | 必填 | 描述 |
| ----- | ----------- | ---- | ------------------------------------------------------------ |
-| event | TouchObject | 是 | 触发触摸事件的位置,event参数见[TouchEvent](ts-universal-events-touch.md#touchevent对象说明)中TouchObject的介绍。 |
+| event | [TouchObject](ts-universal-events-touch.md#touchobject对象说明) | 是 | 触发触摸事件的位置,event参数见[TouchEvent](ts-universal-events-touch.md#touchevent对象说明)中TouchObject的介绍。 |
**返回值:**
@@ -95,7 +95,7 @@ sendKeyEvent(event: KeyEvent): boolean
| 参数 | 类型 | 必填 | 描述 |
| ----- | -------- | ---- | ------------------------------------------------------------ |
-| event | KeyEvent | 是 | 按键事件,event参数见[KeyEvent](ts-universal-events-key.md#keyevent对象说明)介绍。 |
+| event | [KeyEvent](ts-universal-events-key.md#keyevent对象说明) | 是 | 按键事件,event参数见[KeyEvent](ts-universal-events-key.md#keyevent对象说明)介绍。 |
**返回值:**
@@ -113,7 +113,7 @@ sendMouseEvent(event: MouseEvent): boolean
| 参数 | 类型 | 必填 | 描述 |
| ----- | ---------- | ---- | --------------------------------------- |
-| event | MouseEvent | 是 | 鼠标事件,event参数见[MouseEvent](ts-universal-mouse-key.md#mouseevent对象说明)介绍。 |
+| event | [MouseEvent](ts-universal-mouse-key.md#mouseevent对象说明) | 是 | 鼠标事件,event参数见[MouseEvent](ts-universal-mouse-key.md#mouseevent对象说明)介绍。 |
**返回值:**
@@ -132,6 +132,7 @@ class Utils {
static rect_bottom;
static rect_value;
+ //获取组件所占矩形区域坐标
static getComponentRect(key) {
let strJson = getInspectorByKey(key);
let obj = JSON.parse(strJson);
@@ -171,7 +172,7 @@ struct IdExample {
console.info(getInspectorTree())
this.text = "Button 'click to start' is clicked"
setTimeout(() => {
- sendEventByKey("longClick", 11, "")
+ sendEventByKey("longClick", 11, "") // 向id为"longClick"的组件发送长按事件
}, 2000)
}).id('click')
@@ -183,18 +184,18 @@ struct IdExample {
console.info('long clicked')
this.text = "Button 'longClick' is longclicked"
setTimeout(() => {
- let rect = Utils.getComponentRect('onTouch')
+ let rect = Utils.getComponentRect('onTouch') // 获取id为"onTouch"组件的矩形区域坐标
let touchPoint: TouchObject = {
id: 1,
- x: rect.left + (rect.right - rect.left) / 2,
- y: rect.top + (rect.bottom - rect.top) / 2,
+ x: rect.left + (rect.right - rect.left) / 2, // 组件中心点x坐标
+ y: rect.top + (rect.bottom - rect.top) / 2, // 组件中心点y坐标
type: TouchType.Down,
- screenX: rect.left + (rect.right - rect.left) / 2,
- screenY: rect.left + (rect.right - rect.left) / 2,
+ screenX: rect.left + (rect.right - rect.left) / 2, // 组件中心点x坐标
+ screenY: rect.left + (rect.right - rect.left) / 2, // 组件中心点y坐标
}
- sendTouchEvent(touchPoint)
+ sendTouchEvent(touchPoint) // 发送触摸事件
touchPoint.type = TouchType.Up
- sendTouchEvent(touchPoint)
+ sendTouchEvent(touchPoint) // 发送触摸事件
}, 2000)
})).id('longClick')
@@ -205,14 +206,14 @@ struct IdExample {
console.info('onTouch is clicked')
this.text = "Button 'onTouch' is clicked"
setTimeout(() => {
- let rect = Utils.getComponentRect('onMouse')
+ let rect = Utils.getComponentRect('onMouse') // 获取id为"onMouse"组件的矩形区域坐标
let mouseEvent: MouseEvent = {
button: MouseButton.Left,
action: MouseAction.Press,
- x: rect.left + (rect.right - rect.left) / 2,
- y: rect.top + (rect.bottom - rect.top) / 2,
- screenX: rect.left + (rect.right - rect.left) / 2,
- screenY: rect.top + (rect.bottom - rect.top) / 2,
+ x: rect.left + (rect.right - rect.left) / 2, // 组件中心点x坐标
+ y: rect.top + (rect.bottom - rect.top) / 2, // 组件中心点y坐标
+ screenX: rect.left + (rect.right - rect.left) / 2, // 组件中心点x坐标
+ screenY: rect.top + (rect.bottom - rect.top) / 2, // 组件中心点y坐标
timestamp: 1,
target: {
area: {
@@ -230,7 +231,7 @@ struct IdExample {
},
source: SourceType.Mouse
}
- sendMouseEvent(mouseEvent)
+ sendMouseEvent(mouseEvent) // 发送鼠标事件
}, 2000)
}).id('onTouch')
@@ -250,7 +251,7 @@ struct IdExample {
metaKey: 0,
timestamp: 0
}
- sendKeyEvent(keyEvent)
+ sendKeyEvent(keyEvent) // 发送按键事件
}, 2000)
}).id('onMouse')
diff --git a/zh-cn/application-dev/reference/arkui-ts/ts-universal-attributes-focus.md b/zh-cn/application-dev/reference/arkui-ts/ts-universal-attributes-focus.md
index 3a3971109708914bc0e494b496cdb0ecc9a4afdb..f417b1f8d1e02e97998dda9da036f7d9931d966c 100644
--- a/zh-cn/application-dev/reference/arkui-ts/ts-universal-attributes-focus.md
+++ b/zh-cn/application-dev/reference/arkui-ts/ts-universal-attributes-focus.md
@@ -12,7 +12,7 @@
| **名称** | **参数类型** | **描述** |
| -------------------- | -------- | ---------------------------------------- |
| focusable | boolean | 设置当前组件是否可以获焦。 **说明:** 存在默认交互逻辑的组件例如Button、TextInput等,默认即为可获焦,Text、Image等组件则默认状态为不可获焦。 |
-| tabIndex9+ | number | 自定义组件tab键走焦能力,走焦顺序为:tabIndex大于0的组件依次递增走焦, tabIndex等于0的组件按组件树先后顺序走焦。 - tabIndex >= 0:表示元素是可聚焦的,并且可以通过tab键走焦来访问到该元素,按照tabIndex的数值递增而先后获焦。如果多个元素拥有相同的tabIndex,按照元素在当前组件树中的先后顺序获焦 - tabIndex < 0(通常是tabIndex = -1):表示元素是可聚焦的,但是不能通过tab键走焦来访问到该元素。 默认值:0 |
+| tabIndex9+ | number | 自定义组件tab键走焦能力,走焦顺序为:tabIndex大于0的组件依次递增走焦, tabIndex等于0的组件按组件树先后顺序走焦。 - tabIndex >= 0:表示元素是可聚焦的,并且可以通过tab键走焦来访问到该元素,tabIndex值越小,则优先获焦;反之,则后获焦。如果多个元素拥有相同的tabIndex,按照元素在当前组件树中的先后顺序获焦 - tabIndex < 0(通常是tabIndex = -1):表示元素是可聚焦的,但是不能通过tab键走焦来访问到该元素。 默认值:0 |
| defaultFocus9+ | boolean | 设置当前组件是否为当前页面上的默认焦点,仅在初次创建的页面第一次进入时生效。 默认值:false |
| groupDefaultFocus9+ | boolean | 设置当前组件是否为当前组件所在容器获焦时的默认焦点,仅在初次创建容器节点第一次获焦时生效。 默认值:false **说明:** 必须与tabIndex联合使用,当某个容器设置了tabIndex,且容器内某子组件设置了groupDefaultFocus,当该容器首次获焦时,会自动将焦点转移至该组件上。 |
| focusOnTouch9+ | boolean | 设置当前组件是否支持点击获焦能力。 默认值:false **说明:** 仅在组件可点击时才能正常获取焦点。 |
diff --git a/zh-cn/application-dev/reference/arkui-ts/ts-universal-attributes-gradient-color.md b/zh-cn/application-dev/reference/arkui-ts/ts-universal-attributes-gradient-color.md
index 781487c39a78c0808e6f2f635063754f425797f0..0a14af72b6503b0b69acffe09f82e866c0c1e6b8 100644
--- a/zh-cn/application-dev/reference/arkui-ts/ts-universal-attributes-gradient-color.md
+++ b/zh-cn/application-dev/reference/arkui-ts/ts-universal-attributes-gradient-color.md
@@ -12,9 +12,9 @@
| 名称 | 参数类型 | 描述 |
| -------------- | -------------------------------------------- | ----------------------------------- |
-| linearGradient | { angle?: number \| string, direction?: [GradientDirection](ts-appendix-enums.md#gradientdirection), colors: Array<[ColorStop](ts-basic-components-gauge.md#colorstop)>, repeating?: boolean } | 线性渐变。 - angle: 线性渐变的角度。 - direction: 线性渐变的方向,设置angle后不生效。 - colors: 为渐变的颜色描述。 - repeating: 为渐变的颜色重复着色。 |
-| sweepGradient | { center: Point, start?: number \| string, end?: number \| string, rotation?: number\|string, colors: Array<[ColorStop](ts-basic-components-gauge.md#colorstop)>, repeating?: boolean } | 角度渐变。 - center:为角度渐变的中心点。 - start:角度渐变的起点。 - end:角度渐变的终点。 - rotation: 角度渐变的旋转角度。 - colors: 为渐变的颜色描述。 - repeating: 为渐变的颜色重复着色。 |
-| radialGradient | { center: Point, radius: number \| string, colors: Array<[ColorStop](ts-basic-components-gauge.md#colorstop)>, repeating?: boolean } | 径向渐变。 - center:径向渐变的中心点。 - radius:径向渐变的半径。 - colors: 为渐变的颜色描述。 - repeating: 为渐变的颜色重复着色。 |
+| linearGradient | { angle?: number \| string, direction?: [GradientDirection](ts-appendix-enums.md#gradientdirection), colors: Array<[ColorStop](ts-basic-components-gauge.md#colorstop)>, repeating?: boolean } | 线性渐变。 - angle: 线性渐变的起始角度。0点方向顺时针旋转为正向角度。 默认值:180 - direction: 线性渐变的方向,设置angle后不生效。 默认值:GradientDirection.Bottom - colors: 为渐变的颜色描述。 - repeating: 为渐变的颜色重复着色。 默认值:false |
+| sweepGradient | { center: Point, start?: number \| string, end?: number \| string, rotation?: number\|string, colors: Array<[ColorStop](ts-basic-components-gauge.md#colorstop)>, repeating?: boolean } | 角度渐变。 - center:为角度渐变的中心点,即相对于当前组件左上角的坐标。 - start:角度渐变的起点。 默认值:0 - end:角度渐变的终点。 默认值:0 - rotation: 角度渐变的旋转角度。 默认值:0 - colors: 为渐变的颜色描述。 - repeating: 为渐变的颜色重复着色。 默认值:false |
+| radialGradient | { center: Point, radius: number \| string, colors: Array<[ColorStop](ts-basic-components-gauge.md#colorstop)>, repeating?: boolean } | 径向渐变。 - center:径向渐变的中心点,即相对于当前组件左上角的坐标。 - radius:径向渐变的半径。 - colors: 为渐变的颜色描述。 - repeating: 为渐变的颜色重复着色。 默认值:false |
## 示例
@@ -24,7 +24,6 @@
@Entry
@Component
struct ColorGradientExample {
-
build() {
Column({ space: 5 }) {
Text('linearGradient').fontSize(12).width('90%').fontColor(0xCCCCCC)
@@ -33,8 +32,32 @@ struct ColorGradientExample {
.height(50)
.linearGradient({
angle: 90,
- colors: [[0xAEE1E1, 0.0], [0xD3E0DC, 0.3], [0xFCD1D1, 1.0]]
+ colors: [[0xff0000, 0.0], [0x0000ff, 0.3], [0xffff00, 1.0]]
})
+ Text('linearGradient Repeat').fontSize(12).width('90%').fontColor(0xCCCCCC)
+ Row()
+ .width('90%')
+ .height(50)
+ .linearGradient({
+ direction: GradientDirection.Left, // 渐变方向
+ repeating: true, // 渐变颜色是否重复
+ colors: [[0xff0000, 0.0], [0x0000ff, 0.3], [0xffff00, 0.5]] // 数组末尾元素占比小于1时满足重复着色效果
+ })
+ }
+ .width('100%')
+ .padding({ top: 5 })
+ }
+}
+```
+
+
+
+```ts
+@Entry
+@Component
+struct ColorGradientExample {
+ build() {
+ Column({ space: 5 }) {
Text('sweepGradient').fontSize(12).width('90%').fontColor(0xCCCCCC)
Row()
.width(100)
@@ -43,8 +66,37 @@ struct ColorGradientExample {
center: [50, 50],
start: 0,
end: 359,
- colors: [[0xAEE1E1, 0.0], [0xD3E0DC, 0.3], [0xFCD1D1, 1.0]]
+ colors: [[0xff0000, 0.0], [0x0000ff, 0.3], [0xffff00, 1.0]]
})
+
+ Text('sweepGradient Reapeat').fontSize(12).width('90%').fontColor(0xCCCCCC)
+ Row()
+ .width(100)
+ .height(100)
+ .sweepGradient({
+ center: [50, 50],
+ start: 0,
+ end: 359,
+ rotation: 45, // 旋转角度
+ repeating: true, // 渐变颜色是否重复
+ colors: [[0xff0000, 0.0], [0x0000ff, 0.3], [0xffff00, 0.5]] // 数组末尾元素占比小于1时满足重复着色效果
+ })
+ }
+ .width('100%')
+ .padding({ top: 5 })
+ }
+}
+```
+
+
+
+```ts
+// xxx.ets
+@Entry
+@Component
+struct ColorGradientExample {
+ build() {
+ Column({ space: 5 }) {
Text('radialGradient').fontSize(12).width('90%').fontColor(0xCCCCCC)
Row()
.width(100)
@@ -52,7 +104,17 @@ struct ColorGradientExample {
.radialGradient({
center: [50, 50],
radius: 60,
- colors:[[0xAEE1E1, 0.0], [0xD3E0DC, 0.3], [0xFCD1D1, 1.0]]
+ colors: [[0xff0000, 0.0], [0x0000ff, 0.3], [0xffff00, 1.0]]
+ })
+ Text('radialGradient Repeat').fontSize(12).width('90%').fontColor(0xCCCCCC)
+ Row()
+ .width(100)
+ .height(100)
+ .radialGradient({
+ center: [50, 50],
+ radius: 60,
+ repeating: true,
+ colors: [[0xff0000, 0.0], [0x0000ff, 0.3], [0xffff00, 0.5]] // 数组末尾元素占比小于1时满足重复着色效果
})
}
.width('100%')
@@ -61,4 +123,4 @@ struct ColorGradientExample {
}
```
-
+
diff --git a/zh-cn/application-dev/reference/arkui-ts/ts-universal-attributes-grid.md b/zh-cn/application-dev/reference/arkui-ts/ts-universal-attributes-grid.md
index 93b24639efdf7911b1e9d5d2dc7911cd81e76f97..a81f4e0390a61127903e9ca41168c6b2e8786c1a 100644
--- a/zh-cn/application-dev/reference/arkui-ts/ts-universal-attributes-grid.md
+++ b/zh-cn/application-dev/reference/arkui-ts/ts-universal-attributes-grid.md
@@ -1,19 +1,20 @@
# 栅格设置
> **说明:**
-> - 从API Version 7开始支持。后续版本如有新增内容,则采用上角标单独标记该内容的起始版本。
->
-> - 栅格布局的列宽、列间距由距离最近的GridContainer父组件决定。使用栅格属性的组件树上至少需要有1个GridContainer容器组件。
+>
+> - 从API Version 7开始支持。后续版本如有新增内容,则采用上角标单独标记该内容的起始版本。
+>
+> - 栅格布局的列宽、列间距由距离最近的GridContainer父组件决定。使用栅格属性的组件树上至少需要有1个GridContainer容器组件。
## 属性
-| 名称 | 参数类型 | 描述 |
-| ----------- | --------------------------| ----------------------------------------------- |
+| 名称 | 参数类型 | 描述 |
+| ----------- | ------------------------------------------------------------ | ------------------------------------------------------------ |
| useSizeType | { xs?: number \| { span: number, offset: number }, sm?: number \| { span: number, offset: number }, md?: number \| { span: number, offset: number }, lg?: number \| { span: number, offset: number } } | 设置在特定设备宽度类型下的占用列数和偏移列数,span: 占用列数; offset: 偏移列数。 当值为number类型时,仅设置列数, 当格式如{"span": 1, "offset": 0}时,指同时设置占用列数与偏移列数。 - xs: 指设备宽度类型为SizeType.XS时的占用列数和偏移列数。 - sm: 指设备宽度类型为SizeType.SM时的占用列数和偏移列数。 - md: 指设备宽度类型为SizeType.MD时的占用列数和偏移列数。 - lg: 指设备宽度类型为SizeType.LG时的占用列数和偏移列数。 |
-| gridSpan | number | 默认占用列数,指useSizeType属性没有设置对应尺寸的列数(span)时,占用的栅格列数。 **说明:** 设置了栅格span属性,组件的宽度由栅格布局决定。 默认值:1 |
-| gridOffset | number | 默认偏移列数,指useSizeType属性没有设置对应尺寸的偏移(offset)时, 当前组件沿着父组件Start方向,偏移的列数,也就是当前组件位于第n列。 **说明:** - 配置该属性后,当前组件在父组件水平方向的布局不再跟随父组件原有的布局方式,而是沿着父组件的Start方向偏移一定位移。 - 偏移位移 = (列宽 + 间距)\* 列数。 - 设置了偏移(gridOffset)的组件之后的兄弟组件会根据该组件进行相对布局,类似相对布局。 默认值:0 |
+| gridSpan | number | 默认占用列数,指useSizeType属性没有设置对应尺寸的列数(span)时,占用的栅格列数。 **说明:** 设置了栅格span属性,组件的宽度由栅格布局决定。 默认值:1 |
+| gridOffset | number | 默认偏移列数,指useSizeType属性没有设置对应尺寸的偏移(offset)时, 当前组件沿着父组件Start方向,偏移的列数,也就是当前组件位于第n列。 **说明:** - 配置该属性后,当前组件在父组件水平方向的布局不再跟随父组件原有的布局方式,而是沿着父组件的Start方向偏移一定位移。 - 偏移位移 = (列宽 + 间距)\* 列数。 - 设置了偏移(gridOffset)的组件之后的兄弟组件会根据该组件进行相对布局,类似相对布局。 默认值:0 |
## 示例
@@ -23,42 +24,76 @@
@Entry
@Component
struct GridContainerExample1 {
+ build() {
+ Column() {
+ Text('useSizeType').fontSize(15).fontColor(0xCCCCCC).width('90%')
+ GridContainer() {
+ Row({}) {
+ Row() {
+ Text('Left').fontSize(25)
+ }
+ .useSizeType({
+ xs: { span: 1, offset: 0 }, sm: { span: 1, offset: 0 },
+ md: { span: 1, offset: 0 }, lg: { span: 2, offset: 0 }
+ })
+ .height("100%")
+ .backgroundColor(0x66bbb2cb)
- build(){
- GridContainer() {
- Row({}) {
- Row() {
- Text('Left').fontSize(25)
- }
- .useSizeType({
- xs: { span: 1, offset: 0 }, sm: { span: 1, offset: 0 },
- md: { span: 1, offset: 0 }, lg: { span: 2, offset: 0 }
- })
- .height("100%")
- .backgroundColor(0x66bbb2cb)
- Row() {
- Text('Center').fontSize(25)
+ Row() {
+ Text('Center').fontSize(25)
+ }
+ .useSizeType({
+ xs: { span: 1, offset: 0 }, sm: { span: 2, offset: 1 },
+ md: { span: 5, offset: 1 }, lg: { span: 7, offset: 2 }
+ })
+ .height("100%")
+ .backgroundColor(0x66b6c5d1)
+
+ Row() {
+ Text('Right').fontSize(25)
+ }
+ .useSizeType({
+ xs: { span: 1, offset: 0 }, sm: { span: 1, offset: 3 },
+ md: { span: 2, offset: 6 }, lg: { span: 3, offset: 9 }
+ })
+ .height("100%")
+ .backgroundColor(0x66bbb2cb)
}
- .useSizeType({
- xs: { span: 1, offset: 0 }, sm: { span: 2, offset: 1 },
- md: { span: 5, offset: 1 }, lg: { span: 7, offset: 2 }
- })
- .height("100%")
- .backgroundColor(0x66b6c5d1)
+ .height(200)
+
+ }
+ .backgroundColor(0xf1f3f5)
+ .margin({ top: 10 })
+
+ // 单独设置组件的span和offset,在sm尺寸大小的设备上使用useSizeType中sm的数据实现一样的效果
+ Text('gridSpan,gridOffset').fontSize(15).fontColor(0xCCCCCC).width('90%')
+ GridContainer() {
Row() {
- Text('Right').fontSize(25)
- }
- .useSizeType({
- xs: { span: 1, offset: 0 }, sm: { span: 1, offset: 3 },
- md: { span: 2, offset: 6 }, lg: { span: 3, offset: 9 }
- })
- .height("100%")
- .backgroundColor(0x66bbb2cb)
+ Row() {
+ Text('Left').fontSize(25)
+ }
+ .gridSpan(1)
+ .height("100%")
+ .backgroundColor(0x66bbb2cb)
+
+ Row() {
+ Text('Center').fontSize(25)
+ }
+ .gridSpan(2)
+ .gridOffset(1)
+ .height("100%")
+ .backgroundColor(0x66b6c5d1)
+
+ Row() {
+ Text('Right').fontSize(25)
+ }
+ .gridSpan(1)
+ .gridOffset(3)
+ .height("100%")
+ .backgroundColor(0x66bbb2cb)
+ }.height(200)
}
- .height(200)
}
- .backgroundColor(0xf1f3f5)
- .margin({ top: 10 })
}
}
```
@@ -74,3 +109,7 @@ struct GridContainerExample1 {
**图3** 设备宽度为LG

+
+**图4** 单独设置gridSpan和gridOffset在特定屏幕大小下的效果与useSizeType效果一致
+
+
\ No newline at end of file
diff --git a/zh-cn/application-dev/reference/arkui-ts/ts-universal-attributes-hit-test-behavior.md b/zh-cn/application-dev/reference/arkui-ts/ts-universal-attributes-hit-test-behavior.md
index 2dd7f7856641f8870af73dd0a333f79044a94a8f..e734109f6ad6f387155b3d9848b69cedb213fed6 100644
--- a/zh-cn/application-dev/reference/arkui-ts/ts-universal-attributes-hit-test-behavior.md
+++ b/zh-cn/application-dev/reference/arkui-ts/ts-universal-attributes-hit-test-behavior.md
@@ -1,6 +1,6 @@
# 触摸测试控制
-设置组件的触摸测试类型。ArkUI开发框架在处理触屏事件时,会在触屏事件触发前,进行按压点和组件区域的触摸测试来收集需要响应触屏事件的组件,然后基于触摸测试结果分发相应的触屏事件。hitTestBehavior属性可以设置不同的触摸测试响应模式,影响组件的触摸测试收集结果,最终影响后续的触屏事件分发,具体影响参考HitTestMode枚举说明。
+设置组件的触摸测试类型。ArkUI开发框架在处理触屏事件时,会在触屏事件触发前,进行按压点和组件区域的触摸测试来收集需要响应触屏事件的组件,然后基于触摸测试结果分发相应的触屏事件。hitTestBehavior属性可以设置不同的触摸测试响应模式,影响组件的触摸测试收集结果,最终影响后续的触屏事件分发,具体影响参考[HitTestMode](#hittestmode枚举说明)枚举说明。
> **说明:**
> - 从API Version 9开始支持。后续版本如有新增内容,则采用上角标单独标记该内容的起始版本。
@@ -11,9 +11,9 @@
| **名称** | **参数类型** | **描述** |
| -------------------- | -------- | ---------------------------------------- |
-| hitTestBehavior | HitTestMode | 设置当前组件的触摸测试类型。 默认值: HitTestMode.Default |
+| hitTestBehavior | [HitTestMode](#hittestmode枚举说明) | 设置当前组件的触摸测试类型。 默认值: HitTestMode.Default |
-## HitTestMode 枚举说明
+## HitTestMode枚举说明
| 名称 | 描述 |
| ------------| ----------------------------------------- |
diff --git a/zh-cn/application-dev/reference/arkui-ts/ts-universal-attributes-image-effect.md b/zh-cn/application-dev/reference/arkui-ts/ts-universal-attributes-image-effect.md
index a58be16636b4a4f0e005b43b5ce32ff6129c9a0b..3fc5257703195527dba8b5c37e8497b69fd9bb54 100644
--- a/zh-cn/application-dev/reference/arkui-ts/ts-universal-attributes-image-effect.md
+++ b/zh-cn/application-dev/reference/arkui-ts/ts-universal-attributes-image-effect.md
@@ -1,16 +1,11 @@
# 图像效果
-例如背景模糊、内容模糊和灰度效果等。
+设置组件的模糊,阴影效果以及设置图片的图像效果。
> **说明:**
> 从API Version 7开始支持。后续版本如有新增内容,则采用上角标单独标记该内容的起始版本。
-## 权限列表
-
-无
-
-
## 属性
@@ -18,63 +13,113 @@
| ----------------------------- | ------------------------------------------------------------ | ------ | ------------------------------------------------------------ |
| blur | number | - | 为当前组件添加内容模糊效果,入参为模糊半径,模糊半径越大越模糊,为0时不模糊。 |
| backdropBlur | number | - | 为当前组件添加背景模糊效果,入参为模糊半径,模糊半径越大越模糊,为0时不模糊。 |
-| shadow | { radius: number \| [Resource](ts-types.md#resource), color?: Color \| string \| Resource, offsetX?: number \| Resource, offsetY?: number \| Resource } | - | 为当前组件添加阴影效果,入参为模糊半径(必填)、阴影的颜色(可选,默认为灰色)、X轴的偏移量(可选,默认为0),Y轴的偏移量(可选,默认为0),偏移量单位为px。 |
+| shadow | { radius: number \| [Resource](ts-types.md#resource), color?: [Color](ts-appendix-enums.md#color) \| string \| [Resource](ts-types.md#resource), offsetX?: number \| [Resource](ts-types.md#resource), offsetY?: number \| [Resource](ts-types.md#resource) } | - | 为当前组件添加阴影效果,入参为模糊半径(必填)、阴影的颜色(可选,默认为灰色)、X轴的偏移量(可选,默认为0),Y轴的偏移量(可选,默认为0),偏移量单位为px。 |
| grayscale | number | 0.0 | 为当前组件添加灰度效果。值定义为灰度转换的比例,入参1.0则完全转为灰度图像,入参则0.0图像无变化,入参在0.0和1.0之间时,效果呈线性变化。(百分比) |
| brightness | number | 1.0 | 为当前组件添加高光效果,入参为高光比例,值为1时没有效果,小于1时亮度变暗,0为全黑;大于1时亮度增加,数值越大亮度越大。 |
| saturate | number | 1.0 | 为当前组件添加饱和度效果,饱和度为颜色中的含色成分和消色成分(灰)的比例,入参为1时,显示原图像,大于1时含色成分越大,饱和度越大;小于1时消色成分越大,饱和度越小。(百分比) |
| contrast | number | 1.0 | 为当前组件添加对比度效果,入参为对比度的值,值为1时,显示原图;大于1时,值越大对比度越高,图像越清晰醒目;小于1时,值越小对比度越低;当对比度为0时,图像变为全灰。(百分比) |
| invert | number | 0 | 反转输入的图像。入参为图像反转的比例。值为1时完全反转。值为0则图像无变化。(百分比) |
-| colorBlend 8+ | Color \| string \| [Resource](ts-types.md#resource) | - | 为当前组件添加颜色叠加效果,入参为叠加的颜色。 |
+| colorBlend 8+ | [Color](ts-appendix-enums.md#color) \| string \| [Resource](ts-types.md#resource) | - | 为当前组件添加颜色叠加效果,入参为叠加的颜色。 |
| sepia | number | 0 | 将图像转换为深褐色。入参为图像反转的比例。值为1则完全是深褐色的,值为0图像无变化。 (百分比) |
-| hueRotate | number\|string | '0deg' | 色相旋转效果,输入参数为旋转角度。 |
+| hueRotate | number \| string | '0deg' | 色相旋转效果,输入参数为旋转角度。 |
## 示例
-示例效果请以真机运行为准,当前IDE预览器不支持。
-
+### 示例1
+模糊属性的用法,blur内容模糊,backdropBlur背景模糊。
```ts
// xxx.ets
@Entry
@Component
-struct ImageEffectsExample {
-
+struct BlurEffectsExample {
build() {
- Column({space: 10}) {
- // 对字体进行模糊
+ Column({ space: 10 }) {
+ // 对字体进行模糊
Text('font blur').fontSize(15).fontColor(0xCCCCCC).width('90%')
- Text('text').blur(3).width('90%').height(40)
- .fontSize(16).backgroundColor(0xF9CF93).padding({ left: 5 })
+ Flex({ alignItems: ItemAlign.Center }) {
+ Text('original text').margin(10)
+ Text('blur text')
+ .blur(1).margin(10)
+ Text('blur text')
+ .blur(2).margin(10)
+ Text('blur text')
+ .blur(3).margin(10)
+ }.width('90%').height(40)
+ .backgroundColor(0xF9CF93)
+
// 对背景进行模糊
Text('backdropBlur').fontSize(15).fontColor(0xCCCCCC).width('90%')
- Text().width('90%').height(40).fontSize(16).backdropBlur(3)
- .backgroundImage('/comment/bg.jpg')
+ Text()
+ .width('90%')
+ .height(40)
+ .fontSize(16)
+ .backdropBlur(3)
+ .backgroundImage('/pages/attrs/image/image.jpg')
.backgroundImageSize({ width: 1200, height: 160 })
+ }.width('100%').margin({ top: 5 })
+ }
+}
+```
+
+
+### 示例2
+设置图片的效果,包括阴影,灰度,高光,饱和度,对比度,图像反转,叠色,色相旋转等。
+```ts
+// xxx.ets
+@Entry
+@Component
+struct ImageEffectsExample {
+ build() {
+ Column({ space: 10 }) {
+ // 添加阴影效果,图片效果不变
Text('shadow').fontSize(15).fontColor(0xCCCCCC).width('90%')
- Image($r('app.media.bg')).width('90%').height(40)
- .shadow({ radius: 10, color: Color.Gray, offsetX: 5, offsetY: 5 })
+ Image($r('app.media.image'))
+ .width('90%')
+ .height(40)
+ .shadow({ radius: 10, color: Color.Green, offsetX: 20, offsetY: 30 })
+ // 灰度效果0~1,越接近1,灰度越明显
Text('grayscale').fontSize(15).fontColor(0xCCCCCC).width('90%')
- Image($r('app.media.bg')).width('90%').height(40).grayscale(0.6)
+ Image($r('app.media.image')).width('90%').height(40).grayscale(0.3)
+ Image($r('app.media.image')).width('90%').height(40).grayscale(0.8)
+ // 高光效果,1为正常图片,<1变暗,>1亮度增大
Text('brightness').fontSize(15).fontColor(0xCCCCCC).width('90%')
- Image($r('app.media.bg')).width('90%').height(40).brightness(2.0)
+ Image($r('app.media.image')).width('90%').height(40).brightness(1.2)
+ // 饱和度,原图为1
Text('saturate').fontSize(15).fontColor(0xCCCCCC).width('90%')
- Image($r('app.media.bg')).width('90%').height(40).saturate(2.0)
+ Image($r('app.media.image')).width('90%').height(40).saturate(2.0)
+ Image($r('app.media.image')).width('90%').height(40).saturate(0.7)
+ // 对比度,1为原图,>1值越大越清晰,<1值越小越模糊
Text('contrast').fontSize(15).fontColor(0xCCCCCC).width('90%')
- Image($r('app.media.bg')).width('90%').height(40).contrast(2.0)
+ Image($r('app.media.image')).width('90%').height(40).contrast(2.0)
+ Image($r('app.media.image')).width('90%').height(40).contrast(0.8)
+ // 图像反转比例
Text('invert').fontSize(15).fontColor(0xCCCCCC).width('90%')
- Image($r('app.media.bg')).width('90%').height(40).invert(1)
+ Image($r('app.media.image')).width('90%').height(40).invert(0.2)
+ Image($r('app.media.image')).width('90%').height(40).invert(0.8)
+
+ // 叠色添加
+ Text('colorBlend').fontSize(15).fontColor(0xCCCCCC).width('90%')
+ Image($r('app.media.image')).width('90%').height(40).colorBlend(Color.Green)
+ Image($r('app.media.image')).width('90%').height(40).colorBlend(Color.Blue)
+ // 深褐色
+ Text('sepia').fontSize(15).fontColor(0xCCCCCC).width('90%')
+ Image($r('app.media.image')).width('90%').height(40).sepia(0.8)
+
+ // 色相旋转
Text('hueRotate').fontSize(15).fontColor(0xCCCCCC).width('90%')
- Image($r('app.media.bg')).width('90%').height(40).hueRotate(90)
+ Image($r('app.media.image')).width('90%').height(40).hueRotate(90)
}.width('100%').margin({ top: 5 })
}
}
```
-
\ No newline at end of file
+
+
diff --git a/zh-cn/application-dev/reference/arkui-ts/ts-universal-attributes-layout-constraints.md b/zh-cn/application-dev/reference/arkui-ts/ts-universal-attributes-layout-constraints.md
index 3290c21537a94041090bc9f7e2152c4bc5da28cc..0fb3e705c61d405b77d32d30d6ec48ac67bc1471 100644
--- a/zh-cn/application-dev/reference/arkui-ts/ts-universal-attributes-layout-constraints.md
+++ b/zh-cn/application-dev/reference/arkui-ts/ts-universal-attributes-layout-constraints.md
@@ -11,7 +11,7 @@
| 名称 | 参数说明 | 描述 |
| --------------- | ------ | ---------------------------------------- |
-| aspectRatio | number | 指定当前组件的宽高比。 |
+| aspectRatio | number | 指定当前组件的宽高比,aspectRatio = width/height。 |
| displayPriority | number | 设置当前组件在布局容器中显示的优先级,当父容器空间不足时,低优先级的组件会被隐藏。 **说明:** 仅在Row/Column/Flex(单行)容器组件中生效。 |
@@ -22,29 +22,32 @@
@Entry
@Component
struct AspectRatioExample {
- private children : string[] = ['1', '2', '3', '4', '5', '6']
+ private children: string[] = ['1', '2', '3', '4', '5', '6'];
build() {
- Column({space: 20}) {
+ Column({ space: 20 }) {
Text('using container: row').fontSize(14).fontColor(0xCCCCCC).width('100%')
- Row({space: 10}) {
+ Row({ space: 10 }) {
ForEach(this.children, (item) => {
+ // 组件宽度 = 组件高度*1.5 = 90
Text(item)
.backgroundColor(0xbbb2cb)
.fontSize(20)
.aspectRatio(1.5)
.height(60)
+ // 组件高度 = 组件宽度/1.5 = 60/1.5 = 40
Text(item)
.backgroundColor(0xbbb2cb)
.fontSize(20)
.aspectRatio(1.5)
.width(60)
- }, item=>item)
+ }, item => item)
}
- .size({width: "100%", height: 100})
+ .size({ width: "100%", height: 100 })
.backgroundColor(0xd2cab3)
.clip(true)
+ // grid子元素width/height=3/2
Text('using container: grid').fontSize(14).fontColor(0xCCCCCC).width('100%')
Grid() {
ForEach(this.children, (item) => {
@@ -54,12 +57,12 @@ struct AspectRatioExample {
.fontSize(40)
.aspectRatio(1.5)
}
- }, item=>item)
+ }, item => item)
}
.columnsTemplate('1fr 1fr 1fr')
.columnsGap(10)
.rowsGap(10)
- .size({width: "100%", height: 165})
+ .size({ width: "100%", height: 165 })
.backgroundColor(0xd2cab3)
}.padding(10)
}
@@ -74,40 +77,44 @@ struct AspectRatioExample {
```ts
class ContainerInfo {
- label : string = ''
- size : string = ''
+ label: string = '';
+ size: string = '';
}
class ChildInfo {
- text : string = ''
- priority : number = 0
+ text: string = '';
+ priority: number = 0;
}
@Entry
@Component
struct DisplayPriorityExample {
- private container : ContainerInfo[] = [
- {label: 'Big container', size: '90%'},
- {label: 'Middle container', size: '50%'},
- {label: 'Small container', size: '30%'}
+ // 显示容器大小
+ private container: ContainerInfo[] = [
+ { label: 'Big container', size: '90%' },
+ { label: 'Middle container', size: '50%' },
+ { label: 'Small container', size: '30%' }
]
- private children : ChildInfo[] = [
- {text: '1\n(priority:2)', priority: 2},
- {text: '2\n(priority:1)', priority: 1},
- {text: '3\n(priority:3)', priority: 3},
- {text: '4\n(priority:1)', priority: 1},
- {text: '5\n(priority:2)', priority: 2}
+ private children: ChildInfo[] = [
+ { text: '1\n(priority:2)', priority: 2 },
+ { text: '2\n(priority:1)', priority: 1 },
+ { text: '3\n(priority:3)', priority: 3 },
+ { text: '4\n(priority:1)', priority: 1 },
+ { text: '5\n(priority:2)', priority: 2 }
]
- @State currentIndex : number = 0
+ @State currentIndex: number = 0;
build() {
- Column({space: 10}) {
+ Column({ space: 10 }) {
+ // 切换父级容器大小
Button(this.container[this.currentIndex].label).backgroundColor(0x317aff)
- .onClick((event: ClickEvent) => {
- this.currentIndex = (this.currentIndex + 1) % this.container.length
+ .onClick(() => {
+ this.currentIndex = (this.currentIndex + 1) % this.container.length;
})
- Flex({justifyContent: FlexAlign.SpaceBetween}) {
- ForEach(this.children, (item)=>{
+ // 通过变量设置Flex父容器宽度
+ Flex({ justifyContent: FlexAlign.SpaceBetween }) {
+ ForEach(this.children, (item) => {
+ // 使用displayPriority给子组件绑定显示优先级
Text(item.text)
.width(120)
.height(60)
@@ -115,11 +122,11 @@ struct DisplayPriorityExample {
.textAlign(TextAlign.Center)
.backgroundColor(0xbbb2cb)
.displayPriority(item.priority)
- }, item=>item.text)
+ }, item => item.text)
}
.width(this.container[this.currentIndex].size)
.backgroundColor(0xd2cab3)
- }.width("100%").margin({top:50})
+ }.width("100%").margin({ top: 50 })
}
}
diff --git a/zh-cn/application-dev/reference/arkui-ts/ts-universal-attributes-location.md b/zh-cn/application-dev/reference/arkui-ts/ts-universal-attributes-location.md
index 3ed37a6353f0f36a24575241e23b3e62ad4a7b8c..912a81a63445d0c95963190a7fc4d894346ed19c 100644
--- a/zh-cn/application-dev/reference/arkui-ts/ts-universal-attributes-location.md
+++ b/zh-cn/application-dev/reference/arkui-ts/ts-universal-attributes-location.md
@@ -12,25 +12,25 @@
| 名称 | 参数类型 | 描述 |
| -------- | -------- | -------- |
-| align | [Alignment](ts-appendix-enums.md#alignment) | 设置元素内容的对齐方式,只有当设置的width和height大小超过元素本身内容大小时生效。 默认值:Alignment.Center |
+| align | [Alignment](ts-appendix-enums.md#alignment) | 设置元素内容的对齐方式,当元素的width和height大小大于元素本身内容大小时生效。 默认值:Alignment.Center |
| direction | [Direction](ts-appendix-enums.md#direction) | 设置元素水平方向的布局。 默认值:Direction.Auto |
-| position | [Position](ts-types.md#position8) | 使用绝对定位,设置元素锚点相对于父容器顶部起点偏移位置。在布局容器中,设置该属性不影响父容器布局,仅在绘制时进行位置调整。 |
-| markAnchor | [Position](ts-types.md#position8) | 设置元素在位置定位时的锚点,以元素顶部起点作为基准点进行偏移。 默认值: { x: 0, y: 1 } |
-| offset | [Position](ts-types.md#position8) | 相对布局完成位置坐标偏移量,设置该属性,不影响父容器布局,仅在绘制时进行位置调整。 默认值: { x: 0, y: 1 } |
+| position | [Position](ts-types.md#position8) | 绝对定位,设置元素左上角相对于父容器左上角偏移位置。在布局容器中,设置该属性不影响父容器布局,仅在绘制时进行位置调整。 |
+| markAnchor | [Position](ts-types.md#position8) | 设置元素在位置定位时的锚点,以元素左上角作为基准点进行偏移。通常配合position和offset属性使用,单独使用时,效果类似offset 默认值: { x: 0, y: 0 } |
+| offset | [Position](ts-types.md#position8) | 相对定位,设置元素相对于自身的偏移量。设置该属性,不影响父容器布局,仅在绘制时进行位置调整。 默认值: { x: 0, y: 0 } |
| alignRules9+ | { left?: { anchor: string, align: [HorizontalAlign](ts-appendix-enums.md#horizontalalign) }; right?: { anchor: string, align: [HorizontalAlign](ts-appendix-enums.md#horizontalalign) }; middle?: { anchor: string, align: [HorizontalAlign](ts-appendix-enums.md#horizontalalign) }; top?: { anchor: string, align: [VerticalAlign](ts-appendix-enums.md#verticalalign) }; bottom?: { anchor: string, align: [VerticalAlign](ts-appendix-enums.md#verticalalign) }; center?: { anchor: string, align: [VerticalAlign](ts-appendix-enums.md#verticalalign) } } | 指定相对容器的对齐规则。 - left:设置左对齐参数。 - right:设置右对齐参数。 - middle:设置中间对齐的参数。 - top:设置顶部对齐的参数。 - bottom:设置底部对齐的参数。 - center:设置中心对齐的参数。 **说明:** - anchor:设置作为锚点的组件的id值。 - align:设置相对于锚点组件的对齐方式。 |
## 示例
-
+### 示例1
```ts
// xxx.ets
@Entry
@Component
-struct PositionExample {
-
+struct PositionExample1 {
build() {
Column() {
- Column({space: 10}) {
+ Column({ space: 10 }) {
+ // 元素内容<元素宽高,设置内容在与元素内的对齐方式
Text('align').fontSize(9).fontColor(0xCCCCCC).width('90%')
Text('top start')
.align(Alignment.TopStart)
@@ -39,6 +39,14 @@ struct PositionExample {
.fontSize(16)
.backgroundColor(0xFFE4C4)
+ Text('Bottom end')
+ .align(Alignment.BottomEnd)
+ .height(50)
+ .width('90%')
+ .fontSize(16)
+ .backgroundColor(0xFFE4C4)
+
+ // 父容器设置direction为Direction.Auto|Ltr|不设置,子元素从左到右排列
Text('direction').fontSize(9).fontColor(0xCCCCCC).width('90%')
Row() {
Text('1').height(50).width('25%').fontSize(16).backgroundColor(0xF5DEB3)
@@ -47,6 +55,15 @@ struct PositionExample {
Text('4').height(50).width('25%').fontSize(16).backgroundColor(0xD2B48C)
}
.width('90%')
+ .direction(Direction.Auto)
+ // 父容器设置direction为Direction.Rtl,子元素从右到左排列
+ Row() {
+ Text('1').height(50).width('25%').fontSize(16).backgroundColor(0xF5DEB3)
+ Text('2').height(50).width('25%').fontSize(16).backgroundColor(0xD2B48C)
+ Text('3').height(50).width('25%').fontSize(16).backgroundColor(0xF5DEB3)
+ Text('4').height(50).width('25%').fontSize(16).backgroundColor(0xD2B48C)
+ }
+ .width('90%')
.direction(Direction.Rtl)
}
}
@@ -55,54 +72,75 @@ struct PositionExample {
}
```
-
+
+### 示例2
```ts
// xxx.ets
@Entry
@Component
struct PositionExample2 {
-
build() {
Column({ space: 20 }) {
+ // 设置子组件左上角相对于父组件左上角的偏移位置
Text('position').fontSize(12).fontColor(0xCCCCCC).width('90%')
- Row({ space: 20 }) {
- Text('1').size({ width: '45%', height: '50' }).backgroundColor(0xdeb887).border({ width: 1 }) .fontSize(16)
- Text('2 position(25, 15)')
- .size({ width: '60%', height: '30' }).backgroundColor(0xbbb2cb).border({ width: 1 })
- .fontSize(16).align(Alignment.Start)
- .position({ x: 25, y: 15 })
+ Row() {
+ Text('1').size({ width: '30%', height: '50' }).backgroundColor(0xdeb887).border({ width: 1 }).fontSize(16)
+ Text('2 position(30, 10)')
+ .size({ width: '60%', height: '30' })
+ .backgroundColor(0xbbb2cb)
+ .border({ width: 1 })
+ .fontSize(16)
+ .align(Alignment.Start)
+ .position({ x: 30, y: 10 })
Text('3').size({ width: '45%', height: '50' }).backgroundColor(0xdeb887).border({ width: 1 }).fontSize(16)
Text('4 position(50%, 70%)')
- .size({ width: '50%', height: '50' }).backgroundColor(0xbbb2cb).border({ width: 1 }).fontSize(16)
+ .size({ width: '50%', height: '50' })
+ .backgroundColor(0xbbb2cb)
+ .border({ width: 1 })
+ .fontSize(16)
.position({ x: '50%', y: '70%' })
}.width('90%').height(100).border({ width: 1, style: BorderStyle.Dashed })
+ // 相对于起点偏移,其中x为最终定位点距离起点水平方向间距,x>0往左,反之向右。
+ // y为最终定位点距离起点垂直方向间距,y>0向上,反之向下
Text('markAnchor').fontSize(12).fontColor(0xCCCCCC).width('90%')
Stack({ alignContent: Alignment.TopStart }) {
Row()
.size({ width: '100', height: '100' })
.backgroundColor(0xdeb887)
- Image($r('app.media.ic_health_heart'))
+ Text('text')
.size({ width: 25, height: 25 })
+ .backgroundColor(Color.Green)
.markAnchor({ x: 25, y: 25 })
- Image($r('app.media.ic_health_heart'))
+ Text('text')
.size({ width: 25, height: 25 })
- .markAnchor({ x: 25, y: 25 })
- .position({ x: '100%', y: '100%' })
+ .backgroundColor(Color.Green)
+ .markAnchor({ x: -100, y: -25 })
+ Text('text')
+ .size({ width: 25, height: 25 })
+ .backgroundColor(Color.Green)
+ .markAnchor({ x: 25, y: -25 })
}.margin({ top: 25 }).border({ width: 1, style: BorderStyle.Dashed })
+ // 相对定位,x>0向右偏移,反之向左,y>0向下偏移,反之向上
Text('offset').fontSize(12).fontColor(0xCCCCCC).width('90%')
Row() {
Text('1').size({ width: '15%', height: '50' }).backgroundColor(0xdeb887).border({ width: 1 }).fontSize(16)
- Text('2\noffset(15, 15)')
- .size({ width: 120, height: '50' }).backgroundColor(0xbbb2cb).border({ width: 1 })
- .fontSize(16).align(Alignment.Start)
- .offset({ x: 15, y: 15 })
+ Text('2 offset(15, 30)')
+ .size({ width: 120, height: '50' })
+ .backgroundColor(0xbbb2cb)
+ .border({ width: 1 })
+ .fontSize(16)
+ .align(Alignment.Start)
+ .offset({ x: 15, y: 30 })
Text('3').size({ width: '15%', height: '50' }).backgroundColor(0xdeb887).border({ width: 1 }).fontSize(16)
- Text('4\noffset(-10%, 20%)')
- .size({ width: 150, height: '50' }) .backgroundColor(0xbbb2cb).border({ width: 1 }).fontSize(16)
- .offset({ x: '-10%', y: '20%' })
+ Text('4 offset(-10%, 20%)')
+ .size({ width: 100, height: '50' })
+ .backgroundColor(0xbbb2cb)
+ .border({ width: 1 })
+ .fontSize(16)
+ .offset({ x: '-5%', y: '20%' })
}.width('90%').height(100).border({ width: 1, style: BorderStyle.Dashed })
}
.width('100%').margin({ top: 25 })
@@ -110,4 +148,4 @@ struct PositionExample2 {
}
```
-
+
diff --git a/zh-cn/application-dev/reference/arkui-ts/ts-universal-attributes-menu.md b/zh-cn/application-dev/reference/arkui-ts/ts-universal-attributes-menu.md
index 543af9320cab9a91270a8cc089e234af3c2c302b..92463eb228b273e59b141143d599d52b7bbafed5 100644
--- a/zh-cn/application-dev/reference/arkui-ts/ts-universal-attributes-menu.md
+++ b/zh-cn/application-dev/reference/arkui-ts/ts-universal-attributes-menu.md
@@ -12,7 +12,7 @@
| 名称 | 参数类型 | 描述 |
| ---------------------------- | ------------------------------------------------------------ | ------------------------------------------------------------ |
-| bindMenu | Array | content: [CustomBuilder](ts-types.md#custombuilder8), responseType: [ResponseType](ts-appendix-enums.md#responsetype8) | 给组件绑定菜单,触发方式为长按或者右键点击,弹出菜单项需要自定义。 |
## MenuItem
diff --git a/zh-cn/application-dev/reference/arkui-ts/ts-universal-attributes-opacity.md b/zh-cn/application-dev/reference/arkui-ts/ts-universal-attributes-opacity.md
index af1f6a91733221cba91a4c988658878ae00ec49b..1883fcc9579703540203e7034d6d8005fe9df258 100644
--- a/zh-cn/application-dev/reference/arkui-ts/ts-universal-attributes-opacity.md
+++ b/zh-cn/application-dev/reference/arkui-ts/ts-universal-attributes-opacity.md
@@ -10,9 +10,9 @@
## 属性
-| 名称 | 参数类型 | 描述 |
-| ------- | ---------------------------------------------------- | ------------------------------------------------------------ |
-| opacity | number \| [Resource](ts-types.md#resource) | 元素的不透明度,取值范围为0到1,1表示为不透明,0表示为完全透明。 **说明:** 子组件可以继承父组件的此属性。默认值:1 |
+| 名称 | 参数类型 | 描述 |
+| ------- | ---------------------------------------- | ---------------------------------------- |
+| opacity | number \| [Resource](ts-types.md#resource) | 元素的不透明度,取值范围为0到1,1表示不透明,0表示完全透明, 达到隐藏组件效果,但是在布局中占位。 **说明:** 子组件可以继承父组件的此属性。默认值:1 |
## 示例
@@ -30,6 +30,10 @@ struct OpacityExample {
Text().width('90%').height(50).opacity(0.7).backgroundColor(0xAFEEEE)
Text('opacity(0.4)').fontSize(9).width('90%').fontColor(0xCCCCCC)
Text().width('90%').height(50).opacity(0.4).backgroundColor(0xAFEEEE)
+ Text('opacity(0.1)').fontSize(9).width('90%').fontColor(0xCCCCCC)
+ Text().width('90%').height(50).opacity(0.1).backgroundColor(0xAFEEEE)
+ Text('opacity(0)').fontSize(9).width('90%').fontColor(0xCCCCCC)
+ Text().width('90%').height(50).opacity(0).backgroundColor(0xAFEEEE)
}
.width('100%')
.padding({ top: 5 })
@@ -37,4 +41,4 @@ struct OpacityExample {
}
```
-
+
diff --git a/zh-cn/application-dev/reference/arkui-ts/ts-universal-attributes-overlay.md b/zh-cn/application-dev/reference/arkui-ts/ts-universal-attributes-overlay.md
index 4a84e85fa5e5c21fc36f8362b94a69bb967fc72b..14fdb7f1a435f40f82029ed7f207d6ba4457de00 100644
--- a/zh-cn/application-dev/reference/arkui-ts/ts-universal-attributes-overlay.md
+++ b/zh-cn/application-dev/reference/arkui-ts/ts-universal-attributes-overlay.md
@@ -8,10 +8,9 @@
## 属性
-| 名称 | 参数类型 | 描述 |
-| ------- | ----------------------------- | ------------------------- |
-| overlay | value: string, options?: { align?: [Alignment](ts-appendix-enums.md#alignment), offset?: { x?: number, y?: number } } | 在当前组件上,增加遮罩文本,布局与当前组件相同。 默认值: { align: Alignment.Center, offset: {0, 0} } |
-
+| 名称 | 参数类型 | 默认值 | 描述 |
+| -------- | -------- | -------- | -------- |
+| overlay | value: string, options?: { align?: [Alignment](ts-appendix-enums.md#alignment), offset?: {x?: number, y?: number} } | { align: Alignment.Center, offset: {0, 0} } | 在当前组件上,增加遮罩文本。 value: 遮罩文本内容。 options: 文本定位,align设置文本相对于组件的方位,[offset](ts-universal-attributes-location.md)为文本基于自身左上角的偏移量。文本默认处于组件左上角。 两者都设置时效果重叠,文本相对于组件方位定位后再基于当前位置文本的左上角进行偏移。 |
## 示例
@@ -28,7 +27,10 @@ struct OverlayExample {
Column() {
Image($r('app.media.img'))
.width(240).height(240)
- .overlay("Winter is a beautiful season, especially when it snows.", { align: Alignment.Bottom, offset: { x: 0, y: -15 } })
+ .overlay("Winter is a beautiful season, especially when it snows.", {
+ align: Alignment.Bottom,
+ offset: { x: 70, y: 100 }
+ })
}.border({ color: Color.Black, width: 2 })
}.width('100%')
}.padding({ top: 20 })
diff --git a/zh-cn/application-dev/reference/arkui-ts/ts-universal-attributes-popup.md b/zh-cn/application-dev/reference/arkui-ts/ts-universal-attributes-popup.md
index 9f9c8f42383cd699a337eb7f1f17e1a003707ebf..b69316f0d2a2860b830ba3c8369d921ad059b42b 100644
--- a/zh-cn/application-dev/reference/arkui-ts/ts-universal-attributes-popup.md
+++ b/zh-cn/application-dev/reference/arkui-ts/ts-universal-attributes-popup.md
@@ -1,6 +1,6 @@
# Popup控制
-设置组件点击时弹出的气泡框状态。
+给组件绑定popup弹窗,并设置弹窗内容,交互逻辑和显示状态。
> **说明:**
>
@@ -12,7 +12,7 @@
| 名称 | 参数类型 | 描述 |
| ---------- | ------------------------------------- | --------------------------------------- |
-| bindPopup | show: boolean, popup: PopupOptions \| CustomPopupOptions8+ | 给组件绑定Popup,点击弹出弹窗。 show: 创建页面弹窗提示是否默认显示,默认值为false。 popup: 配置当前弹窗提示的参数。 |
+| bindPopup | show: boolean, popup: [PopupOptions](#popupoptions类型说明) \| [CustomPopupOptions](#custompopupoptions8类型说明)8+ | 给组件绑定Popup弹窗,设置参数show为true弹出弹框。 show: 弹窗显示状态,默认值为false,隐藏弹窗。 popup: 配置当前弹窗提示的参数。 |
## PopupOptions类型说明
@@ -21,6 +21,7 @@
| message | string | 是 | 弹窗信息内容。 |
| placementOnTop | boolean | 否 | 是否在组件上方显示,默认值为false。 |
| arrowOffset9+ | [Length](ts-types.md#length) | 否 | popup箭头在弹窗处的偏移。箭头在气泡上下方时,默认居左;箭头在气泡左右侧时,默认居上。 |
+| showInSubWindow9+ | boolean | 否 | 是否在子窗口显示气泡,默认值为false。 |
| primaryButton | { value: string, action: () => void } | 否 | 第一个按钮。 value: 弹窗里主按钮的文本。 action: 点击主按钮的回调函数。 |
| secondaryButton | { value: string, action: () => void } | 否 | 第二个按钮。 value: 弹窗里辅助按钮的文本。 action: 点击辅助按钮的回调函数。 |
| onStateChange | (event: { isVisible: boolean }) => void | 否 | 弹窗状态变化事件回调,参数isVisible为弹窗当前的显示状态。 |
@@ -32,6 +33,7 @@
| builder | [CustomBuilder](ts-types.md#custombuilder8) | 是 | 提示气泡内容的构造器。 |
| placement | [Placement](ts-appendix-enums.md#placement8) | 否 | 气泡组件优先显示的位置,当前位置显示不下时,会自动调整位置。 默认值:Placement.Bottom |
| arrowOffset9+ | [Length](ts-types.md#length) | 否 | popup箭头在弹窗处的偏移。箭头在气泡上下方时,默认居左;箭头在气泡左右侧时,默认居上。 |
+| showInSubWindow9+ | boolean | 否 | 是否在子窗口显示气泡,默认值为false。 |
| maskColor | [ResourceColor](ts-types.md#resourcecolor) | 否 | 提示气泡遮障层的颜色。 |
| popupColor | [ResourceColor](ts-types.md#resourcecolor) | 否 | 提示气泡的颜色。 |
| enableArrow | boolean | 否 | 是否显示箭头。 从API Version 9开始,如果箭头所在方位侧的气泡长度不足以显示下箭头,则会默认不显示箭头。比如:placement设置为Left,但气泡高度小于箭头的宽度(32vp),则实际不会显示箭头。 默认值:true |
@@ -40,36 +42,37 @@
## 示例
-
```ts
// xxx.ets
@Entry
@Component
struct PopupExample {
- @State noHandlePopup: boolean = false
- @State handlePopup: boolean = false
- @State customPopup: boolean = false
+ @State handlePopup: boolean = false;
+ @State customPopup: boolean = false;
+ // popup构造器定义弹框内容
@Builder popupBuilder() {
Row({ space: 2 }) {
- Image('/resource/ic_public_thumbsup.svg').width(24).height(24).margin({ left: -5 })
+ Image($r("app.media.image")).width(24).height(24).margin({ left: -5 })
Text('Custom Popup').fontSize(10)
- }.width(100).height(50).backgroundColor(Color.White)
+ }.width(100).height(50).padding(5)
}
build() {
Flex({ direction: FlexDirection.Column }) {
- Button('no handle popup')
+ // PopupOptions 类型设置弹框内容
+ Button('PopupOptions')
.onClick(() => {
- this.noHandlePopup = !this.noHandlePopup
+ this.noHandlePopup = !this.noHandlePopup;
})
.bindPopup(this.noHandlePopup, {
message: 'content1 content1',
placementOnTop: false,
+ showInSubWindow:true,
onStateChange: (e) => {
console.info(e.isVisible.toString())
if (!e.isVisible) {
- this.noHandlePopup = false
+ this.noHandlePopup = false;
}
}
})
@@ -77,44 +80,59 @@ struct PopupExample {
Button('with handle popup')
.onClick(() => {
- this.handlePopup = !this.handlePopup
+ this.handlePopup = !this.handlePopup;
})
.bindPopup(this.handlePopup, {
message: 'content2 content2',
placementOnTop: true,
+ showInSubWindow:false,
primaryButton: {
- value: 'ok',
+ value: 'confirm',
+ action: () => {
+ this.handlePopup = !this.handlePopup;
+ console.info('ok Button click')
+ }
+ },
+ // 第二个按钮
+ secondaryButton: {
+ value: 'cancle',
action: () => {
- this.handlePopup = !this.handlePopup
- console.info('secondaryButton click')
+ this.handlePopup = !this.handlePopup;
+ console.info('cancle Button click')
}
},
onStateChange: (e) => {
console.info(e.isVisible.toString())
+ if (!e.isVisible) {
+ this.handlePopup = false;
+ }
}
})
- .position({ x: 100, y: 200 })
+ .position({ x: 100, y: 50 })
+
- Button('custom popup')
+ // CustomPopupOptions 类型设置弹框内容
+ Button('CustomPopupOptions')
.onClick(() => {
- this.customPopup = !this.customPopup
+ this.customPopup = !this.customPopup;
})
.bindPopup(this.customPopup, {
builder: this.popupBuilder,
- placement: Placement.Bottom,
+ placement: Placement.Top,
maskColor: 0x33000000,
- popupColor: Color.White,
+ popupColor: Color.Yellow,
enableArrow: true,
+ showInSubWindow:false,
onStateChange: (e) => {
if (!e.isVisible) {
- this.customPopup = false
+ this.customPopup = false;
}
}
})
- .position({ x: 100, y: 350 })
+ .position({ x: 80, y: 200 })
}.width('100%').padding({ top: 5 })
}
}
```
-
+
diff --git a/zh-cn/application-dev/reference/arkui-ts/ts-universal-attributes-size.md b/zh-cn/application-dev/reference/arkui-ts/ts-universal-attributes-size.md
index 0626e002ac1d94606d6f4bd1531592703c6cedc0..e46f3861c8fd4a4c294a5de7ee3ceb972d701df8 100644
--- a/zh-cn/application-dev/reference/arkui-ts/ts-universal-attributes-size.md
+++ b/zh-cn/application-dev/reference/arkui-ts/ts-universal-attributes-size.md
@@ -1,6 +1,6 @@
# 尺寸设置
-用于设置组件的宽高、边距等显示尺寸进行设置。
+用于设置组件的宽高、边距。
> **说明:**
>
@@ -18,7 +18,7 @@
| padding | [Padding](ts-types.md#padding) \| [Length](ts-types.md#length) | 设置内边距属性。 参数为Length类型时,四个方向内边距同时生效。 默认值:0 padding设置百分比时,上下左右内边距均以父容器的width作为基础值。 |
| margin | [Margin](ts-types.md#margin) \| [Length](ts-types.md#length) | 设置外边距属性。 参数为Length类型时,四个方向外边距同时生效。 默认值:0 margin设置百分比时,上下左右外边距均以父容器的width作为基础值。|
| constraintSize | { minWidth?: [Length](ts-types.md#length), maxWidth?: [Length](ts-types.md#length), minHeight?: [Length](ts-types.md#length), maxHeight?: [Length](ts-types.md#length) } | 设置约束尺寸,组件布局时,进行尺寸范围限制。constraintSize的优先级高于Width和Height。 默认值: { minWidth: 0, maxWidth: Infinity, minHeight: 0, maxHeight: Infinity } |
-| layoutWeight | number \| string | 容器尺寸确定时,元素与兄弟节点主轴布局尺寸按照权重进行分配,忽略本身尺寸设置,表示自适应占满剩余空间。 **说明:** 仅在Row/Column/Flex布局中生效。 默认值:0 |
+| layoutWeight | number \| string | 父容器尺寸确定时,设置了layoutWeight属性的子元素与兄弟元素占主轴尺寸按照权重进行分配,忽略元素本身尺寸设置,表示自适应占满剩余空间。 **说明:** 仅在Row/Column/Flex布局中生效。|
## 示例
@@ -31,30 +31,41 @@ struct SizeExample {
build() {
Column({ space: 10 }) {
Text('margin and padding:').fontSize(12).fontColor(0xCCCCCC).width('90%')
- // 宽度80 ,高度80 ,内外边距20
Row() {
+ // 宽度80 ,高度80 ,外边距20(蓝色区域),内边距10(白色区域)
Row() {
- Row().size({ width: '100%', height: '100%' }).backgroundColor(0xAFEEEE)
- }.width(80).height(80).padding(20).margin(20).backgroundColor(0xFDF5E6)
- }.backgroundColor(0xFFA500)
+ Row().size({ width: '100%', height: '100%' }).backgroundColor(Color.Yellow)
+ }
+ .width(80)
+ .height(80)
+ .padding(10)
+ .margin(20)
+ .backgroundColor(Color.White)
+ }.backgroundColor(Color.Blue)
+
+ Text('constraintSize').fontSize(12).fontColor(0xCCCCCC).width('90%')
+ Text('this is a Text.this is a Text.this is a Text.this is a Text.this is a Text.this is a Text.this is a Text.this is a Text.this is a Text.this is a Text.this is a Text.this is a Text.this is a Text.this is a Text.this is a Text')
+ .width('90%')
+ .constraintSize({ maxWidth: 200 })
Text('layoutWeight').fontSize(12).fontColor(0xCCCCCC).width('90%')
- // 容器尺寸确定时,元素与兄弟节点主轴布局尺寸按照权重进行分配,忽略本身尺寸设置。
+ // 父容器尺寸确定时,设置了layoutWeight的子元素在主轴布局尺寸按照权重进行分配,忽略本身尺寸设置。
Row() {
- // 权重1
+ // 权重1,占主轴剩余空间1/3
Text('layoutWeight(1)')
.size({ width: '30%', height: 110 }).backgroundColor(0xFFEFD5).textAlign(TextAlign.Center)
.layoutWeight(1)
- // 权重2
+ // 权重2,占主轴剩余空间2/3
Text('layoutWeight(2)')
.size({ width: '30%', height: 110 }).backgroundColor(0xF5DEB3).textAlign(TextAlign.Center)
.layoutWeight(2)
- // 权重默认0
+ // 未设置layoutWeight属性,组件按照自身尺寸渲染
Text('no layoutWeight')
.size({ width: '30%', height: 110 }).backgroundColor(0xD2B48C).textAlign(TextAlign.Center)
}.size({ width: '90%', height: 140 }).backgroundColor(0xAFEEEE)
}.width('100%').margin({ top: 5 })
- }}
+ }
+}
```
-
+
diff --git a/zh-cn/application-dev/reference/arkui-ts/ts-universal-attributes-text-style.md b/zh-cn/application-dev/reference/arkui-ts/ts-universal-attributes-text-style.md
index 5de534998ef8e77e18a725472c87e5f56d8fa215..4278cb3af7cb87c09196bc9d37a7ab1adfafa8df 100644
--- a/zh-cn/application-dev/reference/arkui-ts/ts-universal-attributes-text-style.md
+++ b/zh-cn/application-dev/reference/arkui-ts/ts-universal-attributes-text-style.md
@@ -1,22 +1,23 @@
# 文本样式设置
+针对包含文本元素的组件,设置文本样式。
+
> **说明:**
>
> 从API Version 7开始支持。后续版本如有新增内容,则采用上角标单独标记该内容的起始版本。
-针对包含文本元素的组件,设置文本样式。
## 属性
| 名称 | 参数类型 | 描述 |
| -----------| ---------------------------------------- | ------------------------------------ |
-| fontColor | [ResourceColor](ts-types.md#resourcecolor) | 设置文本颜色。 |
-| fontSize | Length \| [Resource](ts-types.md#resource) | 设置文本尺寸,Length为number类型时,使用fp单位。 |
-| fontStyle | [FontStyle](ts-appendix-enums.md#fontstyle) | 设置文本的字体样式。 默认值:FontStyle.Normal |
+| fontColor | [ResourceColor](ts-types.md#resourcecolor) | 设置字体颜色。 |
+| fontSize | Length \| [Resource](ts-types.md#resource) | 设置字体大小,Length为number类型时,使用fp单位。字体默认大小10。 |
+| fontStyle | [FontStyle](ts-appendix-enums.md#fontstyle) | 设置字体样式。 默认值:FontStyle.Normal |
| fontWeight | number \| [FontWeight](ts-appendix-enums.md#fontweight) \| string | 设置文本的字体粗细,number类型取值[100, 900],取值间隔为100,默认为400,取值越大,字体越粗。string类型仅支持number类型取值的字符串形式,例如"400",以及"bold"、"bolder"、"lighter"、"regular"、"medium",分别对应FontWeight中相应的枚举值。 默认值:FontWeight.Normal |
-| fontFamily | string \| [Resource](ts-types.md#resource) | 设置文本的字体列表。使用多个字体,使用','进行分割,优先级按顺序生效。例如:'Arial, sans-serif'。 |
+| fontFamily | string \| [Resource](ts-types.md#resource) | 设置字体列表。默认字体'HarmonyOS Sans',且当前只支持这种字体。|
## 示例
@@ -29,40 +30,38 @@ struct TextStyleExample {
build() {
Column({ space: 5 }) {
Text('default text')
-
- Text('text font color red')
+ Divider()
+
+ Text('text font color red').fontColor(Color.Red)
+ Divider()
+
+ Text('text font default')
+ Text('text font size 10').fontSize(10)
+ Text('text font size 10fp').fontSize('10fp')
+ Text('text font size 20').fontSize(20)
+ Divider()
+
+ Text('text font style Italic').fontStyle(FontStyle.Italic)
+ Divider()
+
+ Text('text fontWeight bold').fontWeight(700)
+ Text('text fontWeight lighter').fontWeight(FontWeight.Lighter)
+ Divider()
+
+ Text('red 20 Italic bold text')
.fontColor(Color.Red)
-
- Text('text font size 20')
.fontSize(20)
-
- Text('text font style Italic')
.fontStyle(FontStyle.Italic)
-
- Text('text fontWeight bold')
- .fontWeight(700)
-
- Text('text fontFamily sans-serif')
- .fontFamily('sans-serif')
-
- Text('red 20 Italic bold cursive text')
- .fontColor(Color.Red)
- .fontSize(20)
- .fontStyle(FontStyle.Italic)
- .fontWeight(700)
- .fontFamily('cursive')
- .textAlign(TextAlign.Center)
- .width('90%')
-
- Text('Orange 18 Normal source-sans-pro text')
+ .fontWeight(FontWeight.Bold)
+ Divider()
+
+ Text('Orange 18 Normal text')
.fontColor(Color.Orange)
.fontSize(18)
.fontStyle(FontStyle.Normal)
- .fontWeight(400)
- .fontFamily('source-sans-pro,cursive,sans-serif')
}.width('100%')
}
}
```
-
+
diff --git a/zh-cn/application-dev/reference/arkui-ts/ts-universal-attributes-touch-target.md b/zh-cn/application-dev/reference/arkui-ts/ts-universal-attributes-touch-target.md
index fdf7314b0cb00f71a3d152dd0aa74f3293966955..ffa706268f3bd28b93edaa5944ccca29d365c4ca 100644
--- a/zh-cn/application-dev/reference/arkui-ts/ts-universal-attributes-touch-target.md
+++ b/zh-cn/application-dev/reference/arkui-ts/ts-universal-attributes-touch-target.md
@@ -2,6 +2,7 @@
适用于支持通用点击事件、通用触摸事件、通用手势处理的组件。
+
> **说明:**
>
> 从API Version 8开始支持。后续版本如有新增内容,则采用上角标单独标记该内容的起始版本。
@@ -12,16 +13,16 @@
| 名称 | 参数类型 | 描述 |
| -------------- | --------------------------------------------- | ----------------------------------------- |
-| responseRegion | Array<Rectangle> \| Rectangle | 设置一个或多个触摸热区,包括位置和大小。 默认值: { x:0, y:0, width:'100%', height:'100%' } |
+| responseRegion | Array<[Rectangle](#rectangle对象说明)> \| [Rectangle](#rectangle对象说明) | 设置一个或多个触摸热区,包括位置和大小。 默认触摸热区为整个组件,默认值: { x:0, y:0, width:'100%', height:'100%' } |
-### Rectangle对象说明
+## Rectangle对象说明
| 名称 | 类型 | 必填 | 描述 |
| ------ | ----------------------------- | -----| -------------------------------- |
-| x | [Length](ts-types.md#length) | 否 | 触摸点相对于组件本身左边沿的X坐标。 默认值:0vp |
-| y | [Length](ts-types.md#length) | 否 | 触摸点相对于组件本身左边沿的Y坐标。 默认值:0vp |
-| width | [Length](ts-types.md#length) | 否 | 触摸热区范围的宽度。 默认值:100% |
-| height | [Length](ts-types.md#length) | 否 | 触摸热区范围的高度。 默认值:100% |
+| x | [Length](ts-types.md#length) | 否 | 触摸点相对于组件左上角的x轴坐标。 默认值:0vp |
+| y | [Length](ts-types.md#length) | 否 | 触摸点相对于组件左上角的y轴坐标。 默认值:0vp |
+| width | [Length](ts-types.md#length) | 否 | 触摸热区的宽度。 默认值:'100%' |
+| height | [Length](ts-types.md#length) | 否 | 触摸热区的高度。 默认值:'100%' |
> **说明:**
>
@@ -29,7 +30,7 @@
>
> width和height只能设置正值百分比。width:'100%'表示热区宽度设置为该组件本身的宽度。比如组件本身宽度是100vp,那么'100%'表示热区宽度也为100vp。height:'100%'表示热区高度设置为该组件本身的高度。
>
- > 百分比是相对于组件本身来度量的。
+ > 百分比相对于组件自身宽高进行计算。
## 示例
@@ -38,19 +39,38 @@
// xxx.ets
@Entry
@Component
-struct ResponseRegionExample {
+struct TouchTargetExample {
+ @State text: string = "";
+
build() {
- Column() {
- Toggle({ type: ToggleType.Checkbox, isOn: true })
- .selectedColor(0x39a2db)
- .backgroundColor(0xAFEEEE)
- .responseRegion({ x: 1.0, y: 1.0, width: 400, height: 400 })
- .onChange((isOn: boolean) => {
- console.info('Component status:' + isOn)
- })
- }.width('100%').margin({ top: 5 })
+ Column({ space: 20 }) {
+ Text("{x:0,y:0,width:'50%',height:'100%'}")
+ // 热区宽度为按钮的一半,点击右侧无响应
+ Button("button1")
+ .responseRegion({ x: 0, y: 0, width: '50%', height: '100%' })
+ .onClick(() => {
+ this.text = 'button1 clicked';
+ })
+
+ // 热区宽度为按钮的一半,且右移一个按钮宽度,点击button2右侧左边,点击事件生效
+ Text("{x:'100%',y:0,width:'50%',height:'100%'}")
+ Button("button2")
+ .responseRegion({ x: '100%', y: 0, width: '50%', height: '100%' })
+ .onClick(() => {
+ this.text = 'button2 clicked';
+ })
+ // 热区大小为整个按钮,且下移一个按钮高度,点击button3下方按钮大小区域,点击事件生效
+ Text("{x:0,y:'100%',width:'100%',height:'100%'}")
+ Button("button3")
+ .responseRegion({ x: 0, y: '100%', width: '100%', height: '100%' })
+ .onClick(() => {
+ this.text = 'button3 clicked';
+ })
+
+ Text(this.text).margin({ top: 50 })
+ }.width('100%').margin({ top: 10 })
}
}
```
-
+
diff --git a/zh-cn/application-dev/reference/arkui-ts/ts-universal-attributes-visibility.md b/zh-cn/application-dev/reference/arkui-ts/ts-universal-attributes-visibility.md
index 3a3952194710ccd131beae6c95e6d6aacb5e4000..7d90b701c6991739de6f2c745e356a7f6ca3c516 100644
--- a/zh-cn/application-dev/reference/arkui-ts/ts-universal-attributes-visibility.md
+++ b/zh-cn/application-dev/reference/arkui-ts/ts-universal-attributes-visibility.md
@@ -23,20 +23,21 @@ struct VisibilityExample {
build() {
Column() {
Column() {
- Text('Visible').fontSize(9).width('90%').fontColor(0xCCCCCC)
- Row().visibility(Visibility.Visible).width('90%').height(80).backgroundColor(0xAFEEEE)
-
- Text('None').fontSize(9).width('90%').fontColor(0xCCCCCC)
// 隐藏不参与占位
+ Text('None').fontSize(9).width('90%').fontColor(0xCCCCCC)
Row().visibility(Visibility.None).width('90%').height(80).backgroundColor(0xAFEEEE)
- Text('Hidden').fontSize(9).width('90%').fontColor(0xCCCCCC)
// 隐藏参与占位
+ Text('Hidden').fontSize(9).width('90%').fontColor(0xCCCCCC)
Row().visibility(Visibility.Hidden).width('90%').height(80).backgroundColor(0xAFEEEE)
+
+ // 正常显示,组件默认的显示模式
+ Text('Visible').fontSize(9).width('90%').fontColor(0xCCCCCC)
+ Row().visibility(Visibility.Visible).width('90%').height(80).backgroundColor(0xAFEEEE)
}.width('90%').border({ width: 1 })
}.width('100%').margin({ top: 5 })
}
}
```
-
+
diff --git a/zh-cn/application-dev/reference/arkui-ts/ts-universal-attributes-z-order.md b/zh-cn/application-dev/reference/arkui-ts/ts-universal-attributes-z-order.md
index a75a053860bbdbb099c537603fe317a00d5a1d58..60f6b667a8060ce86195496e469633dcf958602d 100644
--- a/zh-cn/application-dev/reference/arkui-ts/ts-universal-attributes-z-order.md
+++ b/zh-cn/application-dev/reference/arkui-ts/ts-universal-attributes-z-order.md
@@ -1,6 +1,6 @@
# Z序控制
-组件的Z序,指明了该组件在堆叠组件中的位置。
+组件的Z序,设置组件的堆叠顺序。
> **说明:**
>
@@ -25,20 +25,25 @@ struct ZIndexExample {
build() {
Column() {
Stack() {
- // stack会重叠组件, 默认后定义的在最上面
- Text('first child, zIndex(2)')
- .size({width: '40%', height: '30%'}).backgroundColor(0xbbb2cb)
+ // stack会重叠组件, 默认后定义的在最上面,具有较高zIndex值的元素在zIndex较小的元素前面
+ Text('1, zIndex(2)')
+ .size({ width: '40%', height: '30%' }).backgroundColor(0xbbb2cb)
.zIndex(2)
- // 默认值0
- Text('second child, default zIndex(0)')
- .size({width: '90%', height: '80%'}).backgroundColor(0xd2cab3).align(Alignment.TopStart)
- Text('third child, zIndex(1)')
- .size({width: '70%', height: '50%'}).backgroundColor(0xc1cbac).align(Alignment.TopStart)
+ Text('2, default zIndex(1)')
+ .size({ width: '70%', height: '50%' }).backgroundColor(0xd2cab3).align(Alignment.TopStart)
.zIndex(1)
+ Text('3, zIndex(0)')
+ .size({ width: '90%', height: '80%' }).backgroundColor(0xc1cbac).align(Alignment.TopStart)
}.width('100%').height(200)
}.width('100%').height(200)
}
}
```
+Stack容器内子组件不设置zIndex的效果
+
+
+
+Stack容器子组件设置zIndex后效果
+
+
-
diff --git a/zh-cn/application-dev/reference/arkui-ts/ts-universal-component-area-change-event.md b/zh-cn/application-dev/reference/arkui-ts/ts-universal-component-area-change-event.md
index fb78261211c4b65798427d16c61372b017f0c043..edee0fabe4bac1731669640c9c57586f93c7a2d3 100644
--- a/zh-cn/application-dev/reference/arkui-ts/ts-universal-component-area-change-event.md
+++ b/zh-cn/application-dev/reference/arkui-ts/ts-universal-component-area-change-event.md
@@ -42,4 +42,4 @@ struct AreaExample {
}
```
-
+
\ No newline at end of file
diff --git a/zh-cn/application-dev/reference/arkui-ts/ts-universal-events-key.md b/zh-cn/application-dev/reference/arkui-ts/ts-universal-events-key.md
index a1f8377688ccbc92894bf6cd20698688a551db1b..2caa55742494f1bcbc26afd7a90ac4b6c98b500e 100644
--- a/zh-cn/application-dev/reference/arkui-ts/ts-universal-events-key.md
+++ b/zh-cn/application-dev/reference/arkui-ts/ts-universal-events-key.md
@@ -57,4 +57,4 @@ struct KeyEventExample {
}
```
- 
\ No newline at end of file
+ 
diff --git a/zh-cn/application-dev/reference/errorcodes/errcode-DistributedSchedule.md b/zh-cn/application-dev/reference/errorcodes/errcode-DistributedSchedule.md
new file mode 100644
index 0000000000000000000000000000000000000000..1d048f15414bf7751dc8ff7fe4e4610c1438a9aa
--- /dev/null
+++ b/zh-cn/application-dev/reference/errorcodes/errcode-DistributedSchedule.md
@@ -0,0 +1,257 @@
+# DistributedSchedule错误码
+
+## 201 权限校验失败
+
+### 错误信息
+Permission denied.
+
+### 可能原因
+该错误码表示权限校验失败,可能原因是未配置对应权限。
+
+### 处理步骤
+配置权限ohos.permission.MANAGER_MISSIONS或ohos.permission.DISTRIBUTED_DATASYNC。
+
+## 401 参数检查错误
+
+### 错误信息
+The parameter check failed.
+
+### 可能原因
+该错误码表示入参检查错误,可能原因是callback入参检查错误。
+
+### 处理步骤
+检查入参callback是否为合法值。
+
+## 16600001 系统服务工作异常
+
+### 错误信息
+The system ability work abnormally.
+
+### 可能原因
+该错误码表示系统服务工作异常,可能原因如下。
+1. DMS服务没有正常启动。
+2. DMS的binder对象无法正常获取。
+3. 流转依赖的其他服务没有正常启动或者binder对象无法获取。
+
+### 处理步骤
+系统服务内部工作异常,请稍后重试,或者重启设备尝试。
+
+## 16600002 指定的token或callback未注册
+
+### 错误信息
+The specified token or callback has not registered.
+
+### 可能原因
+该错误码可能原因是指定的token或callback未注册。
+
+### 处理步骤
+请先注册token或callback。
+
+## 16600003 应用注册token已达到最大次数限制
+
+### 错误信息
+The number of token registration times has reached the upper limit.
+
+### 可能原因
+该错误码可能原因是应用注册token已达到最大次数限制。
+
+### 处理步骤
+请勿频繁注册,请使用已注册的token。
+
+## 16600004 指定的callback已注册
+
+### 错误信息
+The specified callback has been registered.
+
+### 可能原因
+该错误码表示指定的callback已注册,可能原因是使用相同的callback重复注册。
+
+### 处理步骤
+请勿使用相同的callback重复注册。
+
+## 16300501 系统服务工作异常
+
+### 错误信息
+The system ability work abnormally.
+
+### 可能原因
+该错误码表示系统服务工作异常,可能原因如下。
+1. DMS服务没有正常启动。
+2. DMS的binder对象无法正常获取。
+3. 流转依赖的其他服务没有正常启动或者binder对象无法获取。
+
+### 处理步骤
+系统服务内部工作异常,请稍后重试,或者重启设备尝试。
+
+## 16300502 获取指定的missionId的missionInfo失败
+
+### 错误信息
+Failed to get the missionInfo of the specified missionId.
+
+### 可能原因
+该错误码表示获取指定的missionId的missionInfo失败,可能原因如下。
+1. missionId输入错误。
+2. missionId对应的missionInfo确实不存在。
+
+### 处理步骤
+请检查输入的missionId是否正确。
+
+## 16300503 远端未安装应用且不支持免安装
+
+### 错误信息
+The application is not installed on the remote end and installation-free is not supported.
+
+### 可能原因
+该错误码可能原因是远端未安装迁移应用并且不支持免安装。
+
+### 处理步骤
+1. 请检查远端是否已安装需要迁移的应用。
+2. 请检查远端是否支持免安装。
+
+## 16300504 远端未安装应用但支持免安装,需使用免安装标识重试
+
+### 错误信息
+The application is not installed on the remote end but installation-free is supported, try again with freeInstall flag.
+
+### 可能原因
+该错误码可能原因是远端未安装应用但支持免安装,使用时未使用免安装的标识。
+
+### 处理步骤
+请使用免安装的标识重试。
+
+## 16300505 操作设备必须是迁移的应用所在的设备或需迁移到的目标设备
+
+### 错误信息
+The operation device must be the device where the application to be continued is located or the target device to be continued.
+
+### 可能原因
+该错误码可能原因是操作设备不是迁移的应用所在的设备或需迁移到的目标设备。
+
+### 处理步骤
+请检查操作设备是否是迁移的应用所在的设备或需迁移到的目标设备。
+
+## 16300506 本地迁移任务已在进行中
+
+### 错误信息
+The local continuation task is already in progress.
+
+### 可能原因
+该错误码表示本地迁移任务已在进行中,可能原因是已经发起了迁移任务还未结束。
+
+### 处理步骤
+请检查是否已经发起了迁移并未结束。
+
+## 3 序列化对象失败
+
+### 错误信息
+Failed to flatten the object.
+
+### 可能原因
+该错误码表示对象序列化过程中出现错误,可能原因是系统参数DMS_PROXY_INTERFACE_TOKEN序列化写失败。
+
+### 处理步骤
+请检查系统功能是否正常或者重启。
+
+## 7 空对象
+
+### 错误信息
+The object is null.
+
+### 可能原因
+该错误码表示接口依赖的服务对象或参数对象为空,可能原因如下。
+1. 入参序列化读失败。
+2. DMS服务没有正常启动或binder对象无法正常获取。
+3. DMS依赖的其他服务没有正常启动或者binder对象无法获取。
+
+### 处理步骤
+1. 检查入参是否为有效合法值。
+2. 检查DMS服务是否正常启动,重新启动服务或重启设备。
+3. 检查DMS依赖的其他服务是否正常启动,重新启动服务或重启设备。
+
+## 29360207 注册超出最大次数
+
+### 错误信息
+The maximum number of registrations exceeded.
+
+### 可能原因
+该错误码可能原因是设备频繁注册,次数超出最大次数限制。
+
+### 处理步骤
+重启服务并且避免频繁注册。
+
+## 29360208 token未注册
+
+### 错误信息
+The token has not registered.
+
+### 可能原因
+该错误码可能原因是未注册token。
+
+### 处理步骤
+注册token并使用已注册的token。
+
+## 29360209 callback已注册
+
+### 错误信息
+Callback has been registered.
+
+### 可能原因
+该错误码能原因是指定的callback已经注册过。
+
+### 处理步骤
+请勿使用相同的callback重复注册。
+
+## 29360210 callback未注册
+
+### 错误信息
+Callback has not been registered.
+
+### 可能原因
+该错误码可能原因是指定的callback未注册。
+
+### 处理步骤
+注册callback并使用已注册的callback。
+
+## 29360211 连接ability失败
+
+### 错误信息
+Failed to connect ability.
+
+### 可能原因
+该错误码可能原因是指定token连接ability失败。
+
+### 处理步骤
+检查token是否有效以及相应ability是否正常服务,重新启动服务或重启设备。
+
+## 29360214 callback类型错误
+
+### 错误信息
+The type of callback is not supported.
+
+### 可能原因
+该错误码表示callback类型错误,可能原因是不支持传入的callback类型。
+
+### 处理步骤
+请使用系统支持的callback类型并传入。
+
+## 29360215 无效的连接状态
+
+### 错误信息
+Invalid continuation mode.
+
+### 可能原因
+该错误码表示无效的连接状态,可能原因是入参DeviceConnectState为非指定值。
+
+### 处理步骤
+设置指定合法的DeviceConnectState值。
+
+## 29360216 无效的流转模式
+
+### 错误信息
+Invalid continuation mode.
+
+### 可能原因
+该错误码可能原因是入参ContinuationExtraParams.continuationMode为非指定值。
+
+### 处理步骤
+设置指定合法的ContinuationExtraParams.continuationMode值。
diff --git a/zh-cn/application-dev/reference/errorcodes/errorcode-AccessToken.md b/zh-cn/application-dev/reference/errorcodes/errorcode-AccessToken.md
new file mode 100644
index 0000000000000000000000000000000000000000..a4672eeb695ba0371e8ee31d5bdca10b57ee80e9
--- /dev/null
+++ b/zh-cn/application-dev/reference/errorcodes/errorcode-AccessToken.md
@@ -0,0 +1,140 @@
+# AccessToken错误码
+
+## 401 参数错误
+
+### 错误信息
+Parameter error.${messageInfo}.
+
+### 可能原因
+该错误码表示js参数解析出现错误,可能原因如下。
+1. 入参数量不足。
+2. 参数类型错误。
+
+### 处理步骤
+1. 检查入参,补充足够的入参数量。
+2. 检查入参,修正参数类型错误。
+
+
+## 201 权限校验失败
+
+### 错误信息
+Permission denied.${messageInfo}.
+
+### 可能原因
+该错误码表示调用接口的应用进程未授权该接口所需目标权限,可能原因如下。
+1. 调用接口的应用进程未申请目标权限。
+2. 在该目标权限为用户授权类型的权限情况下,调用接口的应用进程未被用户授予该目标权限。
+
+### 处理步骤
+1. 检查调用接口的应用进程是否申请了该权限。
+2. 在该目标权限为用户授权类型的权限情况下,检查调用接口的应用进程是否已被授予该权限。
+
+
+## 12100001 入参错误
+
+### 错误信息
+Parameter invalid, message is ${messageInfo}.
+
+### 可能原因
+该错误码表示参数校验出现错误,可能原因如下。
+1. tokenId值为0。
+2. 指定的权限名为空或者权限名长度大于256。
+3. 请求授权/撤销权限的flag取值非法。
+4. 注册监听的参数检查错误。
+
+### 处理步骤
+1. 检查入参,修正参数值为合法值。
+
+
+## 12100002 tokenId不存在
+
+### 错误信息
+TokenId does not exist.
+
+### 可能原因
+1. 指定的tokenid不存在。
+2. 指定的tokenId对应的进程非应用进程。
+
+### 处理步骤
+检查入参,修正参数值为有效值。
+
+
+## 12100003 权限名不存在
+
+### 错误信息
+Permission does not exist.
+
+### 可能原因
+1. 指定的permissionName不存在。
+2. 请求授权/撤销权限场景下,指定的应用tokenid未申请过指定的permissionName。
+3. 权限使用记录场景下,指定的permissionName非用户授权的敏感权限。
+
+### 处理步骤
+检查入参,修正参数值为有效值。[权限列表](../../security/permission-list.md)。
+
+
+## 12100004 接口未配套使用
+
+### 错误信息
+The listener interface is not used together.
+
+### 可能原因
+该错误码表示监听器接口未配套使用,可能原因如下。
+1. 当前接口再未配套使用的情况下,重复调用。
+2. 当前接口再未配套使用的情况下,单独调用。
+
+### 处理步骤
+1. 检查当前接口是否有配套使用,如调用启动记录的接口后,在未调用停止记录的接口前,不可再次使用相同的入参调用启动记录接口。
+2. 检查当前接口是否有配套使用,如停止记录的接口需要在启动记录的接口调用之后方可调用,注销监听接口需要在注册监听接口调用之后方可调用。
+
+
+## 12100005 监听器数量超过限制
+
+### 错误信息
+The number of listeners exceeds the limit.
+
+### 可能原因
+该错误码表示当前监听器数量超过限制200.
+
+### 处理步骤
+及时释放已注册的无用的监听器。
+
+
+## 12100006 指定的应用不支持被授予或被取消授予指定的权限
+
+### 错误信息
+The specified application does not support the permissions granted or ungranted as specified.
+
+### 可能原因
+1. 输入的tokenid是远端设备的身份标识,尚未支持分布式授权和取消授权。
+2. 入参指定的tokenid为沙箱应用,被禁止申请指定的权限。
+
+### 处理步骤
+1. 请确认tokenid的获取方式是否正确。
+2. 确认待授权的沙箱应用是否为特殊的受限沙箱应用进程,部分模式下的沙箱应用被禁止授予大部分权限。
+
+
+## 12100007 系统服务工作异常
+
+### 错误信息
+Service is abnormal.
+
+### 可能原因
+该错误码表示系统服务工作异常。
+1. 权限管理服务无法正常启动。
+2. IPC数据读取写入失败。
+
+### 处理步骤
+系统服务内部工作异常,请稍后重试,或者重启设备。
+
+
+## 12100008 内存申请失败
+
+### 错误信息
+Out of memory.
+
+### 可能原因
+系统内存不足。
+
+### 处理步骤
+系统内存不足,请稍后重试,或者重启设备。
\ No newline at end of file
diff --git a/zh-cn/application-dev/reference/errorcodes/errorcodes-sensors.md b/zh-cn/application-dev/reference/errorcodes/errorcodes-sensors.md
new file mode 100755
index 0000000000000000000000000000000000000000..bd0fb88aa38d234c1ebdd8d5084eca035e9dd225
--- /dev/null
+++ b/zh-cn/application-dev/reference/errorcodes/errorcodes-sensors.md
@@ -0,0 +1,81 @@
+# 泛sensor子系统错误码
+
+## 201 权限校验失败
+
+### 错误信息
+
+Permission denied.
+
+### 错误描述
+
+当调用sensor模块或者vibrator模块部分接口时,若没有申请权限,会报此错误码。
+
+### 可能原因
+
+1. 订阅加速度传感器、陀螺仪传感器、计步器传感器及心率传感器等未配置相应的权限。
+
+2. 订阅心率传感器、计步器传感器时用户授权未允许。
+
+3. 启停马达振动时未配置权限。
+
+### 处理步骤
+
+查看权限是否已适配,具体配置方式请参考[权限申请声明](../../security/accesstoken-guidelines.md)。
+
+## 401 参数检查错误
+
+### 错误信息
+
+The parameter invalid.
+
+### 错误描述
+
+当调用sensor模块或者vibrator模块接口时,若传入参数的类型或者范围不匹配,会报此错误码。
+
+### 可能原因
+
+1. 入参类型错误不匹配,如订阅传感器时传入sensorId为非number类型等。
+2. 入参范围不匹配,如订阅传感器时传入非法的sensorId。
+
+### 处理步骤
+
+检查入参类型和范围是否匹配。
+
+## 14500101 传感器服务异常
+
+### 错误信息
+
+Service exception.
+
+### 错误描述
+
+当调用sensor模块on、once、off接口时,若hdi服务异常,会报此错误码。
+
+### 可能原因
+
+访问hdi服务状态异常。
+
+### 处理步骤
+
+1. 定时重试操作,如间隔1s或者按照指数增长间隔重试。
+2. 连续重试3次不可用则停止尝试,期间可优先尝试获取器件列表方式进一步获取设备可用性。
+
+## 14600101 操作设备失败
+
+### 错误信息
+
+Device operation failed.
+
+### 错误描述
+
+当调用vibrator模块startVibration接口时,若hdi服务异常或者设备被占用,会报此错误码。
+
+### 可能原因
+
+1. 访问hdi服务状态异常。
+2. 当前设备被占用。
+
+### 处理步骤
+
+1. 间隔一段时间重试操作,或按指数增长间隔重试;连续重试3次不可用则停止尝试,期间可优先尝试获取器件列表方式进一步获取设备可用性。
+2. 设置振动优先级较低,尝试设置更高优先级。
\ No newline at end of file
diff --git a/zh-cn/application-dev/security/huks-overview.md b/zh-cn/application-dev/security/huks-overview.md
index b92d9dd6e1ce19d6534b9052bbbaf1a4640198f6..0dbdb097edb71bf32738f6f26ad3b002b740e704 100755
--- a/zh-cn/application-dev/security/huks-overview.md
+++ b/zh-cn/application-dev/security/huks-overview.md
@@ -12,16 +12,16 @@ HUKS(OpenHarmony Universal KeyStore)向应用提供密钥库能力,包括
## 运作机制
-HUKS对密钥的使用主要通过Init、Update、Finish操作来实现。
+HUKS对密钥的使用主要通过InitSession、UpdateSession、FinishSession操作来实现。
-- **Init操作**:读取密钥,并为其创建Session Id返回给调用者。
+- **InitSession操作**:读取密钥,并为其创建Session Id返回给调用者。
-- **Update操作**:根据Init操作获取的Session Id对数据进行分段update处理。
+- **UpdateSession操作**:根据InitSession操作获取的Session Id对数据进行分段updateSession处理。
-- **Finish操作**:当所有待处理的数据均传入HUKS后,调用Finish操作完成最终数据处理,释放资源。
+- **FinishSession操作**:当所有待处理的数据均传入HUKS后,调用FinishSession操作完成最终数据处理,释放资源。
> **须知:**
-> 当Init、Update、Finish操作中的任一阶段发生错误时,都需要调用Abort操作来终止密钥的使用。
+> 当InitSession、UpdateSession、FinishSession操作中的任一阶段发生错误时,都需要调用AbortSession操作来终止密钥的使用。
## 约束与限制
diff --git a/zh-cn/application-dev/security/permission-list.md b/zh-cn/application-dev/security/permission-list.md
index 37e5fa2c5a0b6d8d42080d13a57abda549e98811..93151a0c682a67f4d0f661cc0f4c0ac51d3fae34 100644
--- a/zh-cn/application-dev/security/permission-list.md
+++ b/zh-cn/application-dev/security/permission-list.md
@@ -143,5 +143,9 @@
| ohos.permission.securityguard.REPORT_SECURITY_INFO | system_basic | system_grant | FALSE | 允许应用上报风险数据至设备风险管理平台。 |
| ohos.permission.securityguard.REQUEST_SECURITY_MODEL_RESULT | system_basic | system_grant | TRUE | 允许应用获取设备风险状态。 |
| ohos.permission.securityguard.REQUEST_SECURITY_EVENT_INFO | system_core | system_grant | FALSE | 允许应用获取风险详细数据。 |
+| ohos.permission.READ_ACCESSIBILITY_CONFIG | system_basic | system_grant | FALSE | 允许应用读取无障碍配置信息。 |
+| ohos.permission.WRITE_ACCESSIBILITY_CONFIG | system_basic | system_grant | FALSE | 允许应用设置无障碍配置信息。 |
| ohos.permission.ACCESS_CERT_MANAGER_INTERNAL | system_basic | system_grant | FALSE | 允许应用进行证书及凭据的安装、卸载、启用、禁用等操作。 |
| ohos.permission.ACCESS_CERT_MANAGER | normal | system_grant | FALSE | 允许应用进行私有凭据的相关操作、查询证书状态等操作。 |
+| ohos.permission.ACCESS_PUSH_SERVICE | system_basic | system_grant | TRUE | 允许应用访问推送服务的Ability。 |
+| ohos.permission.RECEIVER_STARTUP_COMPLETED | system_basic | system_grant | FALSE | 允许应用订阅开机广播。 |
\ No newline at end of file
diff --git a/zh-cn/application-dev/ui/ts-framework-file-access-rules.md b/zh-cn/application-dev/ui/ts-framework-file-access-rules.md
index 6faf3d23d106f0f7148e3a972810cb3ea17e3b96..97f9bd7e718c8e682d788137be2497aaca1c8860 100644
--- a/zh-cn/application-dev/ui/ts-framework-file-access-rules.md
+++ b/zh-cn/application-dev/ui/ts-framework-file-access-rules.md
@@ -7,16 +7,8 @@
-
## 示例
-```
-common
-│ └─ utils
-│ └─ utils.ets
-└─ pages
- └─ index.ets
-```
-如上所示,将utils放在common中,示例中index.ets访问utils.ets文件
+示例页面位于pages目录中,在pages同级目录common中存放utils,从示例xxx.ets访问utils.ets文件方法如下:
```ts
// xxx.ets
import { FoodData, FoodList } from "../common/utils/utils";
@@ -72,4 +64,4 @@ export struct FoodList {
}
}
}
-```
+```
\ No newline at end of file
diff --git a/zh-cn/application-dev/website.md b/zh-cn/application-dev/website.md
index e0cc40cf2940772b6ed9e9ba4001f873f983ab81..e230026040d48d56d29db3e75377f0c479aa9fb3 100644
--- a/zh-cn/application-dev/website.md
+++ b/zh-cn/application-dev/website.md
@@ -626,44 +626,44 @@
- [数据类型说明](reference/arkui-js/js-appendix-types.md)
- JS服务卡片UI组件参考
- JS服务卡片UI框架说明
- - [文件组织](reference/js-service-widget-ui/js-service-widget-file.md)
- - 语法
- - [HML语法参考](reference/js-service-widget-ui/js-service-widget-syntax-hml.md)
- - [CSS语法参考](reference/js-service-widget-ui/js-service-widget-syntax-css.md)
- - [配置数据和事件](reference/js-service-widget-ui/js-service-widget-configuration.md)
- - [多语言支持](reference/js-service-widget-ui/js-service-widget-multiple-languages.md)
- - [低版本兼容](reference/js-service-widget-ui/js-service-widget-version-compatibility.md)
+ - [文件组织](reference/js-service-widget-ui/js-service-widget-file.md)
+ - 语法
+ - [HML语法参考](reference/js-service-widget-ui/js-service-widget-syntax-hml.md)
+ - [CSS语法参考](reference/js-service-widget-ui/js-service-widget-syntax-css.md)
+ - [配置数据和事件](reference/js-service-widget-ui/js-service-widget-configuration.md)
+ - [多语言支持](reference/js-service-widget-ui/js-service-widget-multiple-languages.md)
+ - [低版本兼容](reference/js-service-widget-ui/js-service-widget-version-compatibility.md)
- 组件
- - 通用
- - [通用属性](reference/js-service-widget-ui/js-service-widget-common-attributes.md)
- - [通用样式](reference/js-service-widget-ui/js-service-widget-common-styles.md)
- - [通用事件](reference/js-service-widget-ui/js-service-widget-common-events.md)
- - [渐变样式](reference/js-service-widget-ui/js-service-widget-common-gradient.md)
- - [媒体查询](reference/js-service-widget-ui/js-service-widget-common-mediaquery.md)
- - [自定义字体样式](reference/js-service-widget-ui/js-service-widget-common-customizing-font.md)
- - [无障碍](reference/js-service-widget-ui/js-service-widget-common-accessibility.md)
- - [原子布局](reference/js-service-widget-ui/js-service-widget-common-atomic-layout.md)
- - 容器组件
- - [div](reference/js-service-widget-ui/js-service-widget-container-div.md)
- - [list](reference/js-service-widget-ui/js-service-widget-container-list.md)
- - [list-item](reference/js-service-widget-ui/js-service-widget-container-list-item.md)
- - [stack](reference/js-service-widget-ui/js-service-widget-container-stack.md)
- - [swiper](reference/js-service-widget-ui/js-service-widget-container-swiper.md)
- - 基础组件
- - [button](reference/js-service-widget-ui/js-service-widget-basic-button.md)
- - [calendar](reference/js-service-widget-ui/js-service-widget-basic-calendar.md)
- - [chart](reference/js-service-widget-ui/js-service-widget-basic-chart.md)
- - [clock](reference/js-service-widget-ui/js-service-widget-basic-clock.md)
- - [divider](reference/js-service-widget-ui/js-service-widget-basic-divider.md)
- - [image](reference/js-service-widget-ui/js-service-widget-basic-image.md)
- - [input](reference/js-service-widget-ui/js-service-widget-basic-input.md)
- - [progress](reference/js-service-widget-ui/js-service-widget-basic-progress.md)
- - [span](reference/js-service-widget-ui/js-service-widget-basic-span.md)
- - [text](reference/js-service-widget-ui/js-service-widget-basic-text.md)
+ - 通用
+ - [通用属性](reference/js-service-widget-ui/js-service-widget-common-attributes.md)
+ - [通用样式](reference/js-service-widget-ui/js-service-widget-common-styles.md)
+ - [通用事件](reference/js-service-widget-ui/js-service-widget-common-events.md)
+ - [渐变样式](reference/js-service-widget-ui/js-service-widget-common-gradient.md)
+ - [媒体查询](reference/js-service-widget-ui/js-service-widget-common-mediaquery.md)
+ - [自定义字体样式](reference/js-service-widget-ui/js-service-widget-common-customizing-font.md)
+ - [无障碍](reference/js-service-widget-ui/js-service-widget-common-accessibility.md)
+ - [原子布局](reference/js-service-widget-ui/js-service-widget-common-atomic-layout.md)
+ - 容器组件
+ - [div](reference/js-service-widget-ui/js-service-widget-container-div.md)
+ - [list](reference/js-service-widget-ui/js-service-widget-container-list.md)
+ - [list-item](reference/js-service-widget-ui/js-service-widget-container-list-item.md)
+ - [stack](reference/js-service-widget-ui/js-service-widget-container-stack.md)
+ - [swiper](reference/js-service-widget-ui/js-service-widget-container-swiper.md)
+ - 基础组件
+ - [button](reference/js-service-widget-ui/js-service-widget-basic-button.md)
+ - [calendar](reference/js-service-widget-ui/js-service-widget-basic-calendar.md)
+ - [chart](reference/js-service-widget-ui/js-service-widget-basic-chart.md)
+ - [clock](reference/js-service-widget-ui/js-service-widget-basic-clock.md)
+ - [divider](reference/js-service-widget-ui/js-service-widget-basic-divider.md)
+ - [image](reference/js-service-widget-ui/js-service-widget-basic-image.md)
+ - [input](reference/js-service-widget-ui/js-service-widget-basic-input.md)
+ - [progress](reference/js-service-widget-ui/js-service-widget-basic-progress.md)
+ - [span](reference/js-service-widget-ui/js-service-widget-basic-span.md)
+ - [text](reference/js-service-widget-ui/js-service-widget-basic-text.md)
- 自定义组件
- - [自定义组件基本用法](reference/js-service-widget-ui/js-service-widget-custom-basic-usage.md)
- - [自定义事件](reference/js-service-widget-ui/js-service-widget-custom-events.md)
- - [Props](reference/js-service-widget-ui/js-service-widget-custom-props.md)
+ - [自定义组件基本用法](reference/js-service-widget-ui/js-service-widget-custom-basic-usage.md)
+ - [自定义事件](reference/js-service-widget-ui/js-service-widget-custom-events.md)
+ - [Props](reference/js-service-widget-ui/js-service-widget-custom-props.md)
- [数据类型说明](reference/js-service-widget-ui/js-service-widget-appendix-types.md)
- 接口参考(JS及TS API)
- [开发说明](reference/apis/development-intro.md)
diff --git a/zh-cn/contribute/OpenHarmony-c-cpp-secure-coding-guide.md b/zh-cn/contribute/OpenHarmony-c-cpp-secure-coding-guide.md
index eb25d94f33dc08adeb1c564a88aef39fd1279397..99d4093109a8fcd7cf5ab7fd5a4fb619aa8e7041 100644
--- a/zh-cn/contribute/OpenHarmony-c-cpp-secure-coding-guide.md
+++ b/zh-cn/contribute/OpenHarmony-c-cpp-secure-coding-guide.md
@@ -46,15 +46,25 @@
- 校验输入只包含可接受的字符(“白名单”形式),尤其需要注意一些特殊情况下的特殊字符。
**外部数据校验原则**
+
**1.信任边界**
+
由于外部数据不可信,因此系统在运行过程中,如果数据传输与处理跨越不同的信任边界,为了防止攻击蔓延,必须对来自信任边界外的其他模块的数据进行合法性校验。
+
(a)so(或者dll)之间
+
so或dll作为独立的第三方模块,用于对外导出公共的api函数,供其他模块进行函数调用。so/dll无法确定上层调用者是否传递了合法参数,因此so/dll的公共函数需要检查调用者提供参数的合法性。so/dll应该设计成低耦合、高复用性,尽管有些软件的so/dll当前设计成只在本软件中使用,但仍然应该将不同的so/dll模块视为不同的信任边界。
+
(b)进程与进程之间
+
为防止通过高权限进程提权,进程与进程之间的IPC通信(包括单板之间的IPC通信、不同主机间的网络通信),应视为不同信任边界。
+
(c)应用层进程与操作系统内核
+
操作系统内核具有比应用层更高的权限,内核向应用层提供的接口,应该将来自应用层的数据作为不可信数据处理。
+
(d)可信执行环境内外环境
+
为防止攻击蔓延至可信执行环境,TEE、SGX等对外提供的接口,应该将来自外部的数据作为不可信数据处理。
**2.外部数据校验**
@@ -2746,7 +2756,7 @@ int Encode(unsigned char *in, size_t inSize, unsigned char *out, size_t maxSize)
**【描述】**
-**说明:**内核 mmap接口中,经常使用remap_pfn_range()函数将设备物理内存映射到用户进程空间。如果映射起始地址等参数由用户态控制并缺少合法性校验,将导致用户态可通过映射读写任意内核地址。如果攻击者精心构造传入参数,甚至可在内核中执行任意代码。
+**说明**:内核 mmap接口中,经常使用remap_pfn_range()函数将设备物理内存映射到用户进程空间。如果映射起始地址等参数由用户态控制并缺少合法性校验,将导致用户态可通过映射读写任意内核地址。如果攻击者精心构造传入参数,甚至可在内核中执行任意代码。
**【错误代码示例】**
@@ -2876,7 +2886,7 @@ ssize_t correct_write(struct file *file, const char __user *user_buf, size_t cou
## 必须对copy_from_user()拷贝长度进行校验,防止缓冲区溢出
-**说明:**内核态从用户态拷贝数据时通常使用copy_from_user()函数,如果未对拷贝长度做校验或者校验不当,会造成内核缓冲区溢出,导致内核panic或提权。
+**说明**:内核态从用户态拷贝数据时通常使用copy_from_user()函数,如果未对拷贝长度做校验或者校验不当,会造成内核缓冲区溢出,导致内核panic或提权。
**【错误代码示例】**
@@ -2921,7 +2931,7 @@ static long gser_ioctl(struct file *fp, unsigned cmd, unsigned long arg)
**【描述】**
-**说明:**内核态使用copy_to_user()向用户态拷贝数据时,当数据未完全初始化(如结构体成员未赋值、字节对齐引起的内存空洞等),会导致栈上指针等敏感信息泄漏。攻击者可利用绕过kaslr等安全机制。
+**说明**:内核态使用copy_to_user()向用户态拷贝数据时,当数据未完全初始化(如结构体成员未赋值、字节对齐引起的内存空洞等),会导致栈上指针等敏感信息泄漏。攻击者可利用绕过kaslr等安全机制。
**【错误代码示例】**
diff --git a/zh-cn/contribute/template/errorcodes-template.md b/zh-cn/contribute/template/errorcodes-template.md
new file mode 100644
index 0000000000000000000000000000000000000000..b0dc80efcb97c58d6b86f2c8e1c9963012dccb0d
--- /dev/null
+++ b/zh-cn/contribute/template/errorcodes-template.md
@@ -0,0 +1,120 @@
+# xxx *(子系统名)* 错误码
+
+> **说明:**
+>
+> *1、所有的写作说明,在完成写作后,都要删除。*
+>
+> *2、错误码文档的命名规则:统一前缀,命名格式为errorcode-xxx(具体子系统名).md。*
+
+| | 说明项 | 细则 |
+| ---- | ------------------------------ | ------------------------------------------------------------ |
+| 1 | 错误码error.errorNumber | 按统一的错误码编号规则设计错误码ID。 |
+| 2 | 错误信息error.message | **字段含义**:出现异常时,会给开发者抛出一个错误对象,对象里包括errorNumber和error.message,此处定义error.message的值,即英文错误码简述。 **要求**: 1.应当简洁、具体,避免过于宽泛的定义。 2.此处英文描述必须经过翻译中心审校。在提交本错误码设计评审前,请将预期的中英文message描述提供给翻译中心,将翻译中心审校后的英文填至此处。 |
+| 3 | 错误简述 Short Description | **字段含义**:中文错误码简述。 **要求**: 1.与”错误信息“对应的中文简述,应当简洁、具体,避免过于宽泛的定义。 |
+| 4 | 错误描述 Description | **字段含义**:错误码详细描述,告知错误码所属的业务场景、产生位置等。 **要求**: 1.描述错误码所属的业务场景(比如开发xx业务、开发xx功能时)。 2.描述出现异常的具体现象、产生位置(比如xx模块、xx类、xx接口等),辅助开发者理解和处理异常。 |
+| 5 | 可能原因 Possible Causes | **字段含义**:列举出现该异常的所有可能原因(对应该错误码的产生机制)。 **要求**: 1.全面、无遗漏。 2.言简意赅。 3.根据可能性从高到低排序。 |
+| 6 | 处理步骤 Procedure | **字段含义**:根据错误现象及可能原因,告知开发者遇到该异常时如何应对。 **要求**: 1.采用step样式描述处理指导。每个大步骤与可能原因一一对应,按顺序分别给出各原因对应的处理指导。大步骤下可以有子步骤。 2.步骤要明确、具体、可执行。涉及判断的,提供明确的判断标准。 3.对系统或业务有影响的操作,在操作前以“注意”或“警告”形式提供警示信息。具体提示要求,请参见“风格指南”中的“提示与说明”:https://gitee.com/openharmony/docs/blob/master/zh-cn/contribute/style-guide/style-guide-content-elements.md |
+
+## 1300001 重复操作 *(错误码number+空格+错误简述)*
+
+### 错误信息
+
+This is repeat operation.
+
+### 错误描述
+
+> **说明:**
+>
+> *1.描述**错误码所属的业务场景(比如开发xx业务、开发xx功能时)***。
+>
+> *2.描述**出现异常的具体现象、产生位置(比如xx模块、xx类、xx接口等)**,辅助开发者理解和处理异常。*
+
+当对同一窗口对象存在重复操作时,xx模块(或xx类,或xx接口)会上报此错误码。
+
+### 可能原因
+
+> **说明:**
+>
+> *列举出现该异常的所有可能原因(对应该错误码的产生机制)。*
+>
+> *1.全面、无遗漏。*
+>
+> *2.言简意赅。*
+>
+> *3.根据可能性从高到低排序。*
+
+1. 重复创建已创建的窗口。
+
+2. xxx。
+
+### 处理步骤
+
+> **说明:**
+>
+> *根据错误现象及可能原因,告知开发者遇到该异常时如何应对。*
+>
+> *1.采用step样式描述处理指导。**每个大步骤与可能原因一一对应**,按顺序分别给出各原因对应的处理指导。**大步骤下可以有子步骤**。*
+>
+> *2.步骤要**明确、具体、可执行。涉及判断的,提供明确的判断标准**。*
+>
+> *3.对系统或业务有影响的操作,在操作前以“注意”或“警告”形式提供警示信息。具体提示要求,请参见“风格指南”中的“提示与说明”:https://gitee.com/openharmony/docs/blob/master/zh-cn/contribute/style-guide/style-guide-content-elements.md*
+
+1. 检查该窗口是否已创建。
+
+ xxx。
+
+ ```
+ uth([in] String appId, [in] IHwShareCallback callback);
+ int shareFaInfo([in] PacMapEx pacMapEx);
+ }
+ ```
+
+2. xxx。
+
+ a. xxx。
+
+ ```
+ uth([in] String appId, [in] IHwShareCallback callback);
+ int shareFaInfo([in] PacMapEx pacMapEx);
+ }
+ ```
+
+ b. xxx。
+
+## 1300002 窗口状态异常
+
+### 错误信息
+
+xxx
+
+### 错误描述
+
+xxx
+
+### 可能原因
+
+1. xxx
+
+### 处理步骤
+
+1. 检查该窗口是否已创建。
+
+ xxx。
+
+ ```
+ uth([in] String appId, [in] IHwShareCallback callback);
+ int shareFaInfo([in] PacMapEx pacMapEx);
+ }
+ ```
+
+2. xxx。
+
+ a. xxx。
+
+ ```
+ uth([in] String appId, [in] IHwShareCallback callback);
+ int shareFaInfo([in] PacMapEx pacMapEx);
+ }
+ ```
+
+ b. xxx。
\ No newline at end of file
diff --git a/zh-cn/device-dev/subsystems/Readme-CN.md b/zh-cn/device-dev/subsystems/Readme-CN.md
old mode 100755
new mode 100644
index d6fee427c72b22dd221450e614be3617ed952815..3aca6a69afabb10c047aed0b228025b0f4c283b4
--- a/zh-cn/device-dev/subsystems/Readme-CN.md
+++ b/zh-cn/device-dev/subsystems/Readme-CN.md
@@ -91,7 +91,7 @@
- [DFX概述](subsys-dfx-overview.md)
- [HiLog开发指导](subsys-dfx-hilog-rich.md)
- [HiLog_Lite开发指导](subsys-dfx-hilog-lite.md)
- - [HiTrace开发指导](subsys-dfx-hitrace.md)
+ - [HiTraceChain开发指导](subsys-dfx-hitracechain.md)
- [HiCollie开发指导](subsys-dfx-hicollie.md)
- HiSysEvent开发指导
- [HiSysEvent概述](subsys-dfx-hisysevent-overview.md)
diff --git a/zh-cn/device-dev/subsystems/subsys-build-FAQ.md b/zh-cn/device-dev/subsystems/subsys-build-FAQ.md
index d6fc48c3105832d35a14f5f53cdbde550012cdb4..0e13d2b1057f2a18dec5997909eb9ea1fa3137d9 100644
--- a/zh-cn/device-dev/subsystems/subsys-build-FAQ.md
+++ b/zh-cn/device-dev/subsystems/subsys-build-FAQ.md
@@ -2,7 +2,7 @@
## 常见编译问题和解决方法
-### 编译构建过程中,提示“usr/sbin/ninja: invalid option -- w”
+### 提示“usr/sbin/ninja: invalid option -- w”
- **现象描述:** 编译失败,提示“usr/sbin/ninja: invalid option -- w”。
@@ -10,7 +10,7 @@
- **解决办法:** 卸载环境中ninja和gn,按照[获取工具](../../device-dev/get-code/gettools-ide.md)。
-### 编译构建过程中,提示“/usr/bin/ld: cannot find -lncurses”
+### 提示“/usr/bin/ld: cannot find -lncurses”
- **现象描述:** 编译失败,提示“/usr/bin/ld: cannot find -lncurses”。
@@ -22,7 +22,7 @@
sudo apt-get install lib32ncurses5-dev
```
-### 编译构建过程中,提示“line 77: mcopy: command not found”
+### 提示“line 77: mcopy: command not found”
- **现象描述:** 编译失败,提示“line 77: mcopy: command not found”。
@@ -34,7 +34,7 @@
sudo apt-get install dosfstools mtools
```
-### 编译构建过程中,提示“riscv32-unknown-elf-gcc: error trying to exec 'cc1': execvp: No such file or directory”
+### 提示“riscv32-unknown-elf-gcc: error trying to exec 'cc1': execvp: No such file or directory”
- **现象描述:** 编译失败,提示“riscv32-unknown-elf-gcc: error trying to exec 'cc1': execvp: No such file or directory”。
@@ -48,7 +48,7 @@
使用chmod命令修改目录权限为755。
-### 编译构建过程中,提示“No module named 'Crypto'”
+### 提示“No module named 'Crypto'”
- **现象描述:** 编译失败,提示“No module named 'Crypto'”。
@@ -68,7 +68,7 @@
sudo pip3 install pycryptodome
```
-### 编译构建过程中,提示“xx.sh : xx unexpected operator”
+### 提示“xx.sh : xx unexpected operator”
- **现象描述:** 编译失败:“xx.sh [: xx unexpected operator”。
@@ -82,7 +82,7 @@
```
-### 编译构建过程中,提示“some services are not authenticated. Listed as follow”
+### 提示“some services are not authenticated. Listed as follow”
- **现象描述:** 编译失败:“some services are not authenticated. Listed as follow”。
diff --git a/zh-cn/device-dev/subsystems/subsys-dfx-hitrace.md b/zh-cn/device-dev/subsystems/subsys-dfx-hitracechain.md
similarity index 51%
rename from zh-cn/device-dev/subsystems/subsys-dfx-hitrace.md
rename to zh-cn/device-dev/subsystems/subsys-dfx-hitracechain.md
index 498881fd5cad8a390f6a0bf5100959d2610f29b6..1c2cdf491de1474253287ada866d2de343d83553 100644
--- a/zh-cn/device-dev/subsystems/subsys-dfx-hitrace.md
+++ b/zh-cn/device-dev/subsystems/subsys-dfx-hitracechain.md
@@ -1,13 +1,13 @@
-# HiTrace开发指导
+# HiTraceChain开发指导
## 概述
-HiTrace主要是对于跨设备/跨进程/跨线程的业务流程,通过相同的traceid在整个业务流程中传递,将流程处理过程中的调用关系、各种输出信息关联和展现出来,帮助使用者分析、定位问题和系统调优。
+HiTraceChain主要是对于跨设备/跨进程/跨线程的业务流程,通过相同的traceid在整个业务流程中传递,将流程处理过程中的调用关系、各种输出信息关联和展现出来,帮助使用者分析、定位问题和系统调优。
## 应用场景
-HiTrace在产品中应用场景如下,包括:
+HiTraceChain在产品中应用场景如下,包括:
- 端侧业务流程信息(日志、事件等)关联、上报
@@ -15,14 +15,14 @@ HiTrace在产品中应用场景如下,包括:
- IDE对业务流程详细信息、耗时分布进行调试,辅助系统调优
- **图1** HiTrace应用场景
+ **图1** HiTraceChain应用场景

### 业务使用示例
**图2** 业务调用流程图(跨设备、跨进程同步调用)
-
+

1. 调试时展示业务流程中的调用关系,进行关键路径分析、功能依赖分析,确定各调用点耗时、调用频率,提前发现性能瓶颈点。
@@ -30,7 +30,7 @@ HiTrace在产品中应用场景如下,包括:
**图3** 业务调用流程序列图

-
+
**图4** 业务调用流程性能耗时分布

@@ -39,75 +39,75 @@ HiTrace在产品中应用场景如下,包括:
## 接口说明
-HiTrace提供C++、C接口。上层业务主要使用HiTrace跟踪启动、结束接口。
+HiTraceChain提供C++、C接口。上层业务主要使用HiTraceChain跟踪启动、结束接口。
-HiTrace实现在C层,主要原理是在一次业务调用流程中,利用通信传递traceid,在业务处理前将traceid设置到当前线程的TLS(Thread Local Storage)中,业务处理结束清除当前线程的TLS;这样的话,在业务处理中可以从当前线程的上下文TLS取到traceid,自动附加到日志、事件信息中。
+HiTraceChain实现在C层,主要原理是在一次业务调用流程中,利用通信传递traceid,在业务处理前将traceid设置到当前线程的TLS(Thread Local Storage)中,业务处理结束清除当前线程的TLS;这样的话,在业务处理中可以从当前线程的上下文TLS取到traceid,自动附加到日志、事件信息中。
### 接口形式对比
**表1** C++、C的函数接口
-| | **C++** | **C** |
+| | **C++** | **C** |
| -------- | -------- | -------- |
-| **类** | **函数** | **函数** |
-| HiTrace | HiTraceId Begin(const std::string& name, int flags) | HiTraceIdStruct HiTraceBegin(const char\* name, int flags) |
-| | void End(const HiTraceId& id) | void HiTraceEnd(const HiTraceIdStruct\* pId) |
-| | HiTraceId GetId(); | HiTraceIdStruct HiTraceGetId() |
-| | void SetId(const HiTraceId& id) | void HiTraceSetId(const HiTraceIdStruct\* pId) |
-| | void ClearId() | void HiTraceClearId() |
-| | HiTraceId CreateSpan() | HiTraceIdStruct HiTraceCreateSpan() |
-| | void Tracepoint(HiTraceTracepointType type, const HiTraceId& id, const char\* fmt, ...) | void HiTraceTracepoint(HiTraceTracepointType type, const HiTraceIdStruct_ pId, const char_ fmt, ...) |
-| | void Tracepoint(HiTraceCommunicationMode mode, HiTraceTracepointType type, const HiTraceId& id, const char\* fmt, ...) | void HiTraceTracepointEx(HiTraceCommunicationMode mode, HiTraceTracepointType type, const HiTraceIdStruct_ pId, const char_ fmt, ...) |
-| HiTraceId | HiTraceId(); | void HiTraceInitId(HiTraceIdStruct\* pId) |
-| | HiTraceId(const uint8_t\* pIdArray, int len) | HiTraceIdStruct HiTraceBytesToId(const uint8_t\* pIdArray, int len) |
-| | bool IsValid() | int HiTraceIsValid(const HiTraceIdStruct\* pId) |
-| | bool IsFlagEnabled(HiTraceFlag flag) | int HiTraceIsFlagEnabled(const HiTraceIdStruct\* pId, HiTraceFlag flag) |
-| | void EnableFlag(HiTraceFlag flag) | void HiTraceEnableFlag(HiTraceIdStruct\* pId, HiTraceFlag flag) |
-| | int GetFlags() | int HiTraceGetFlags(const HiTraceIdStruct\* pId) |
-| | void SetFlags(int flags) | void HiTraceSetFlags(HiTraceIdStruct\* pId, int flags) |
-| | uint64_t GetChainId() | uint64_t HiTraceGetChainId(const HiTraceIdStruct\* pId) |
-| | void SetChainId(uint64_t chainId) | void HiTraceSetChainId(HiTraceIdStruct\* pId, uint64_t chainId) |
-| | uint64_t GetSpanId() | uint64_t HiTraceGetSpanId(const HiTraceIdStruct\* pId) |
-| | void SetSpanId(uint64_t spanId) | void HiTraceSetSpanId(HiTraceIdStruct\* pId, uint64_t spanId) |
-| | uint64_t GetParentSpanId() | uint64_t HiTraceGetParentSpanId(const HiTraceIdStruct\* pId) |
-| | void SetParentSpanId(uint64_t parentSpanId) | void HiTraceSetParentSpanId(HiTraceIdStruct\* pId, uint64_t parentSpanId) |
-| | int ToBytes(uint8_t\* pIdArray, int len) | int HiTraceIdToBytes(const HiTraceIdStruct_ pId, uint8_t_ pIdArray, int len) |
+| **类** | **函数** | **函数** |
+| HiTraceChain | HiTraceId Begin(const std::string& name, int flags) | HiTraceIdStruct HiTraceChainBegin(const char\* name, int flags) |
+| | void End(const HiTraceId& id) | void HiTraceChainEnd(const HiTraceIdStruct\* pId) |
+| | HiTraceId GetId(); | HiTraceIdStruct HiTraceChainGetId() |
+| | void SetId(const HiTraceId& id) | void HiTraceChainSetId(const HiTraceIdStruct\* pId) |
+| | void ClearId() | void HiTraceChainClearId() |
+| | HiTraceId CreateSpan() | HiTraceIdStruct HiTraceChainCreateSpan() |
+| | void Tracepoint(HiTraceTracepointType type, const HiTraceId& id, const char\* fmt, ...) | void HiTraceChainTracepoint(HiTraceTracepointType type, const HiTraceIdStruct_ pId, const char_ fmt, ...) |
+| | void Tracepoint(HiTraceCommunicationMode mode, HiTraceTracepointType type, const HiTraceId& id, const char\* fmt, ...) | void HiTraceChainTracepointEx(HiTraceCommunicationMode mode, HiTraceTracepointType type, const HiTraceIdStruct_ pId, const char_ fmt, ...) |
+| HiTraceId | HiTraceId(); | void HiTraceChainInitId(HiTraceIdStruct\* pId) |
+| | HiTraceId(const uint8_t\* pIdArray, int len) | HiTraceIdStruct HiTraceChainBytesToId(const uint8_t\* pIdArray, int len) |
+| | bool IsValid() | int HiTraceChainIsValid(const HiTraceIdStruct\* pId) |
+| | bool IsFlagEnabled(HiTraceFlag flag) | int HiTraceChainIsFlagEnabled(const HiTraceIdStruct\* pId, HiTraceFlag flag) |
+| | void EnableFlag(HiTraceFlag flag) | void HiTraceChainEnableFlag(HiTraceIdStruct\* pId, HiTraceFlag flag) |
+| | int GetFlags() | int HiTraceChainGetFlags(const HiTraceIdStruct\* pId) |
+| | void SetFlags(int flags) | void HiTraceChainSetFlags(HiTraceIdStruct\* pId, int flags) |
+| | uint64_t GetChainId() | uint64_t HiTraceChainGetChainId(const HiTraceIdStruct\* pId) |
+| | void SetChainId(uint64_t chainId) | void HiTraceChainSetChainId(HiTraceIdStruct\* pId, uint64_t chainId) |
+| | uint64_t GetSpanId() | uint64_t HiTraceChainGetSpanId(const HiTraceIdStruct\* pId) |
+| | void SetSpanId(uint64_t spanId) | void HiTraceChainSetSpanId(HiTraceIdStruct\* pId, uint64_t spanId) |
+| | uint64_t GetParentSpanId() | uint64_t HiTraceChainGetParentSpanId(const HiTraceIdStruct\* pId) |
+| | void SetParentSpanId(uint64_t parentSpanId) | void HiTraceChainSetParentSpanId(HiTraceIdStruct\* pId, uint64_t parentSpanId) |
+| | int ToBytes(uint8_t\* pIdArray, int len) | int HiTraceChainIdToBytes(const HiTraceIdStruct_ pId, uint8_t_ pIdArray, int len) |
### 接口功能参数
**表2** C++接口说明函数参数和功能
-| **类** | **方法** | **描述** |
+| **类** | **方法** | **描述** |
| -------- | -------- | -------- |
-| HiTrace | HiTraceId Begin(const std::string& name, int flags) | 功能:启动HiTrace跟踪、生成HiTraceId对象并设置到当前线程TLS中。 输入参数: - name:业务流程名称。 - flags:跟踪指示位,可以组合使用,具体含义为: - HITRACE_FLAG_INCLUDE_ASYNC:同时跟踪同步调用和异步调用,缺省只跟踪同步调用。 - HITRACE_FLAG_DONOT_CREATE_SPAN:不创建子分支,缺省创建子分支。 - HITRACE_FLAG_TP_INFO:输出tracepoint信息,缺省不输出。 - HITRACE_FLAG_NO_BE_INFO:不输出起始、结束信息,缺省输出。 - HITRACE_FLAG_DONOT_ENABLE_LOG:不与日志关联输出,缺省关联。 - HITRACE_FLAG_FAULT_TRIGGER:故障触发的跟踪,缺省为正常启动的。 - HITRACE_FLAG_D2D_TP_INFO:输出设备间tracepoint信息,缺省不输出。 - HITRACE_FLAG_DEFAULT: 缺省标志。 - 输出参数:无 - 返回值:启动跟踪超过返回有效HiTraceId对象,否则返回无效对象。 注意:嵌套启动跟踪时,内层启动调用返回无效对象。 |
-| | void End(const HiTraceId& id) | 功能:根据Begin返回的HiTraceId停止HiTrace跟踪;清除当前线程TLS中HiTraceId内容。 输入参数: - id:HiTraceId对象。 输出参数:无。 返回值:无。 |
-| | HiTraceId GetId(); | 功能:从当前线程TLS中获取HiTraceId对象。 输入参数:无。 输出参数:无。 返回值:当前线程上下文的HiTraceId对象。 |
-| | void SetId(const HiTraceId& id) | 功能:设置HiTraceId对象内容到当前线程TLS中。 输入参数: - id:HiTraceId对象。 输出参数:无。 返回值:无。 |
-| | void ClearId() | 功能:清除当前线程TLS中的HiTraceId对象。 输入参数:无。 输出参数:无。 返回值:无。 |
-| | HiTraceId CreateSpan() | 接口功能:获取当前HiTraceId对象中的分支ID。 输入参数:无。 输出参数:无。 返回值:当前分支ID。 |
-| | void Tracepoint(HiTraceTracepointType type, const HiTraceId& id, const char\* fmt, ...) | 功能:根据埋点信息类型输出HiTrace埋点信息,包括时间戳、子分支HiTraceId对象信息。 输入参数: - type:埋点信息类型,具体为 - HITRACE_TP_CS:Client Send,同步/异步通信客户端发送信息。 - HITRACE_TP_SR:Server Receive, 同步/异步通信服务端接收信息。 - HITRACE_TP_SS:Server Send,同步通信服务端发送响应信息。 - HITRACE_TP_CR:Client Receive,同步通信客户端接收响应信息。 - HITRACE_TP_GENERAL:普通输出信息。 - id:当前子分支id。 - fmt:格式化变参描述字符串。 - args:变参。 输出参数:无。 返回值:无。 |
-| | void Tracepoint(HiTraceCommunicationMode mode, HiTraceTracepointType type, const HiTraceId& id, const char\* fmt, ...) | 功能:根据通信模式、埋点信息类型输出HiTrace埋点信息,包括时间戳、子分支HiTraceId对象信息。 输入参数: - mode:通信模式,具体为 - HITRACE_CM_DEFAULT:未指定通信模式。 - HITRACE_CM_THREAD:线程间通信。 - HITRACE_CM_PROCESS:进程间通信。 - HITRACE_CM_DEVICE:设备间通信。 - type:埋点信息类型,具体为 - HITRACE_TP_CS:Client Send,同步/异步通信客户端发送信息。 - HITRACE_TP_SR:Server Receive, 同步/异步通信服务端接收信息。 - HITRACE_TP_SS:Server Send,同步通信服务端发送响应信息。 - HITRACE_TP_CR:Client Receive,同步通信客户端接收响应信息。 - HITRACE_TP_GENERAL:普通输出信息。 - id:当前子分支id。 - fmt:格式化变参描述字符串。 - args:变参。 输出参数:无。 返回值:无。 |
-| HiTraceId | HiTraceId(); | 功能:缺省构造函数,生成无效HiTraceId对象。 输入参数:无。 输出参数:无。 返回值:无。 |
-| | HiTraceId(const uint8_t\* pIdArray, int len) | 功能:构造函数,根据字节数组创建跟踪HiTraceId对象。 输入参数: - pIdArray:字节数组指针。 - len:字节数组长度。 输出参数:无。 返回值:无。 |
-| | bool IsValid() | 功能:HiTraceId对象是否有效。 输入参数:无。 输出参数:无。 返回值:true 有效;false 无效。 |
-| | bool IsFlagEnabled(HiTraceFlag flag) | 功能:HiTraceId对象的某标志是否置位。 输入参数: - flag:跟踪指示位,具体含义见Begin函数中的定义。 输出参数:无。 返回值:true 该标志置位;false 该标志未置位。 |
-| | void EnableFlag(HiTraceFlag flag) | 功能:设置某跟踪标志位到HiTraceId对象中。 输入参数: - flag:跟踪指示位,具体含义见Begin函数中的定义。 输出参数:无。 返回值:无。 |
-| | int GetFlags() | 功能:获取HiTraceId对象中设置的标志位。 输入参数:无。 输出参数:无。 返回值:跟踪指示位组合,具体含义见Begin函数中的定义。 |
-| | void SetFlags(int flags) | 功能:设置跟踪标志位到HiTraceId对象中。 输入参数: - flags:跟踪指示位组合,具体含义见Begin函数中的定义。 输出参数:无。 返回值:无。 |
-| | uint64_t GetChainId() | 功能:获取跟踪链ID。 输入参数:无。 输出参数:无。 返回值:跟踪链ID。 |
-| | void SetChainId(uint64_t chainId) | 功能:设置跟踪链ID到HiTraceId对象中。 输入参数: - chainId:跟踪链ID。 输出参数:无。 返回值:无。 |
-| | uint64_t GetSpanId() | 接口功能:获取当前HiTraceId对象中的分支ID。 输入参数:无。 输出参数:无。 返回值:当前分支ID。 |
-| | void SetSpanId(uint64_t spanId) | 功能:设置分支ID到HiTraceId对象中。 输入参数: - spanId:分支ID。 输出参数:无。 返回值:无。 |
-| | uint64_t GetParentSpanId() | 功能:获取当前HiTraceId对象中的父分支ID。 输入参数:无。 输出参数:无。 返回值:父分支ID。 |
-| | void SetParentSpanId(uint64_t parentSpanId) | 功能:设置父分支ID到HiTraceId对象中。 输入参数: - parentSpanId:父分支ID。 输出参数:无。 返回值:无。 |
-| | int ToBytes(uint8_t\* pIdArray, int len) | 功能:将HiTraceId对象转换为字节数组,便于缓存或者通信传递。 输入参数: - pIdArray:字节数组指针,数组长度至少为HITRACE_ID_LEN。 - len: 字节数组长度 输出参数: - pIdArray:字节数组指针,对象有效时存储转换后的对象数据。 返回值:0 转换失败; >0 有效对象转换数组长度。 |
+| HiTraceChain | HiTraceId Begin(const std::string& name, int flags) | 功能:启动HiTraceChain跟踪、生成HiTraceId对象并设置到当前线程TLS中。 输入参数: - name:业务流程名称。 - flags:跟踪指示位,可以组合使用,具体含义为: - HITRACE_FLAG_INCLUDE_ASYNC:同时跟踪同步调用和异步调用,缺省只跟踪同步调用。 - HITRACE_FLAG_DONOT_CREATE_SPAN:不创建子分支,缺省创建子分支。 - HITRACE_FLAG_TP_INFO:输出tracepoint信息,缺省不输出。 - HITRACE_FLAG_NO_BE_INFO:不输出起始、结束信息,缺省输出。 - HITRACE_FLAG_DONOT_ENABLE_LOG:不与日志关联输出,缺省关联。 - HITRACE_FLAG_FAULT_TRIGGER:故障触发的跟踪,缺省为正常启动的。 - HITRACE_FLAG_D2D_TP_INFO:输出设备间tracepoint信息,缺省不输出。 - HITRACE_FLAG_DEFAULT: 缺省标志。 - 输出参数:无 - 返回值:启动跟踪超过返回有效HiTraceId对象,否则返回无效对象。 注意:嵌套启动跟踪时,内层启动调用返回无效对象。 |
+| | void End(const HiTraceId& id) | 功能:根据Begin返回的HiTraceId停止HiTraceChain跟踪;清除当前线程TLS中HiTraceId内容。 输入参数: - id:HiTraceId对象。 输出参数:无。 返回值:无。 |
+| | HiTraceId GetId(); | 功能:从当前线程TLS中获取HiTraceId对象。 输入参数:无。 输出参数:无。 返回值:当前线程上下文的HiTraceId对象。 |
+| | void SetId(const HiTraceId& id) | 功能:设置HiTraceId对象内容到当前线程TLS中。 输入参数: - id:HiTraceId对象。 输出参数:无。 返回值:无。 |
+| | void ClearId() | 功能:清除当前线程TLS中的HiTraceId对象。 输入参数:无。 输出参数:无。 返回值:无。 |
+| | HiTraceId CreateSpan() | 接口功能:获取当前HiTraceId对象中的分支ID。 输入参数:无。 输出参数:无。 返回值:当前分支ID。 |
+| | void Tracepoint(HiTraceTracepointType type, const HiTraceId& id, const char\* fmt, ...) | 功能:根据埋点信息类型输出HiTraceChain埋点信息,包括时间戳、子分支HiTraceId对象信息。 输入参数: - type:埋点信息类型,具体为 - HITRACE_TP_CS:Client Send,同步/异步通信客户端发送信息。 - HITRACE_TP_SR:Server Receive, 同步/异步通信服务端接收信息。 - HITRACE_TP_SS:Server Send,同步通信服务端发送响应信息。 - HITRACE_TP_CR:Client Receive,同步通信客户端接收响应信息。 - HITRACE_TP_GENERAL:普通输出信息。 - id:当前子分支id。 - fmt:格式化变参描述字符串。 - args:变参。 输出参数:无。 返回值:无。 |
+| | void Tracepoint(HiTraceCommunicationMode mode, HiTraceTracepointType type, const HiTraceId& id, const char\* fmt, ...) | 功能:根据通信模式、埋点信息类型输出HiTraceChain埋点信息,包括时间戳、子分支HiTraceId对象信息。 输入参数: - mode:通信模式,具体为 - HITRACE_CM_DEFAULT:未指定通信模式。 - HITRACE_CM_THREAD:线程间通信。 - HITRACE_CM_PROCESS:进程间通信。 - HITRACE_CM_DEVICE:设备间通信。 - type:埋点信息类型,具体为 - HITRACE_TP_CS:Client Send,同步/异步通信客户端发送信息。 - HITRACE_TP_SR:Server Receive, 同步/异步通信服务端接收信息。 - HITRACE_TP_SS:Server Send,同步通信服务端发送响应信息。 - HITRACE_TP_CR:Client Receive,同步通信客户端接收响应信息。 - HITRACE_TP_GENERAL:普通输出信息。 - id:当前子分支id。 - fmt:格式化变参描述字符串。 - args:变参。 输出参数:无。 返回值:无。 |
+| HiTraceId | HiTraceId(); | 功能:缺省构造函数,生成无效HiTraceId对象。 输入参数:无。 输出参数:无。 返回值:无。 |
+| | HiTraceId(const uint8_t\* pIdArray, int len) | 功能:构造函数,根据字节数组创建跟踪HiTraceId对象。 输入参数: - pIdArray:字节数组指针。 - len:字节数组长度。 输出参数:无。 返回值:无。 |
+| | bool IsValid() | 功能:HiTraceId对象是否有效。 输入参数:无。 输出参数:无。 返回值:true 有效;false 无效。 |
+| | bool IsFlagEnabled(HiTraceFlag flag) | 功能:HiTraceId对象的某标志是否置位。 输入参数: - flag:跟踪指示位,具体含义见Begin函数中的定义。 输出参数:无。 返回值:true 该标志置位;false 该标志未置位。 |
+| | void EnableFlag(HiTraceFlag flag) | 功能:设置某跟踪标志位到HiTraceId对象中。 输入参数: - flag:跟踪指示位,具体含义见Begin函数中的定义。 输出参数:无。 返回值:无。 |
+| | int GetFlags() | 功能:获取HiTraceId对象中设置的标志位。 输入参数:无。 输出参数:无。 返回值:跟踪指示位组合,具体含义见Begin函数中的定义。 |
+| | void SetFlags(int flags) | 功能:设置跟踪标志位到HiTraceId对象中。 输入参数: - flags:跟踪指示位组合,具体含义见Begin函数中的定义。 输出参数:无。 返回值:无。 |
+| | uint64_t GetChainId() | 功能:获取跟踪链ID。 输入参数:无。 输出参数:无。 返回值:跟踪链ID。 |
+| | void SetChainId(uint64_t chainId) | 功能:设置跟踪链ID到HiTraceId对象中。 输入参数: - chainId:跟踪链ID。 输出参数:无。 返回值:无。 |
+| | uint64_t GetSpanId() | 接口功能:获取当前HiTraceId对象中的分支ID。 输入参数:无。 输出参数:无。 返回值:当前分支ID。 |
+| | void SetSpanId(uint64_t spanId) | 功能:设置分支ID到HiTraceId对象中。 输入参数: - spanId:分支ID。 输出参数:无。 返回值:无。 |
+| | uint64_t GetParentSpanId() | 功能:获取当前HiTraceId对象中的父分支ID。 输入参数:无。 输出参数:无。 返回值:父分支ID。 |
+| | void SetParentSpanId(uint64_t parentSpanId) | 功能:设置父分支ID到HiTraceId对象中。 输入参数: - parentSpanId:父分支ID。 输出参数:无。 返回值:无。 |
+| | int ToBytes(uint8_t\* pIdArray, int len) | 功能:将HiTraceId对象转换为字节数组,便于缓存或者通信传递。 输入参数: - pIdArray:字节数组指针,数组长度至少为HITRACE_ID_LEN。 - len: 字节数组长度 输出参数: - pIdArray:字节数组指针,对象有效时存储转换后的对象数据。 返回值:0 转换失败; >0 有效对象转换数组长度。 |
## 通信调用处理
-业务使用时跨设备/跨进程/跨线程的调用是通过通信机制实现的,HiTrace需要通信机制传递traceid。
+业务使用时跨设备/跨进程/跨线程的调用是通过通信机制实现的,HiTraceChain需要通信机制传递traceid。
OpenHarmony系统内置部分通信机制(如ZIDL)已经支持传递traceid。
@@ -158,47 +158,47 @@ OpenHarmony系统内置部分通信机制(如ZIDL)已经支持传递traceid
### C++接口实例
1. 源代码开发
- 在类定义头文件或者类实现源文件中,包含hitrace头文件:
+ 在类定义头文件或者类实现源文件中,包含hitracechain头文件:
```
- #include "hitrace/trace.h"
+ #include "hitrace/tracechain.h"
```
在业务类实现源文件中使用(启动/结束跟踪):
-
+
```
using namespace OHOS::HiviewDFX;
- HiTraceId traceId = HiTrace::Begin("MyServiceFlow", HITRACE_FLAG_DEFAULT);
+ auto traceId = HiTraceChain::Begin("MyServiceFlow", HITRACE_FLAG_DEFAULT);
......
- HiTrace::End(traceId);
+ HiTraceChain::End(traceId);
```
2. 编译设置,在BUILD.gn里增加子系统SDK依赖:
-
+
```
- external_deps = [ "hiviewdfx:libhitrace" ]
+ external_deps = [ "hiviewdfx:libhitracechain" ]
```
### C接口实例
1. 源代码开发
- 在源文件中,包含hitrace头文件:
+ 在源文件中,包含hitracechain头文件:
```
- #include "hitrace/trace.h"
+ #include "hitrace/tracechain.h"
```
在业务类实现源文件中使用(启动/结束跟踪):
-
+
```
- HiTraceIdStruct traceId = HiTraceBegin("MyServiceFlow", HITRACE_FLAG_DEFAULT);
+ HiTraceIdStruct traceId = HiTraceChainBegin("MyServiceFlow", HITRACE_FLAG_DEFAULT);
......
- HiTraceEnd(traceId);
+ HiTraceChainEnd(traceId);
```
2. 编译设置,在BUILD.gn里增加子系统SDK依赖:
-
+
```
- external_deps = [ "hiviewdfx:libhitrace" ]
+ external_deps = [ "hiviewdfx:libhitracechain" ]
```
diff --git a/zh-cn/device-dev/subsystems/subsys-dfx-overview.md b/zh-cn/device-dev/subsystems/subsys-dfx-overview.md
old mode 100755
new mode 100644
index 6f258b47c5f8a1ca074ebf3252efbceb3c8a5381..f1c06a3c423a210fc491f7fe9c994ff242146cc9
--- a/zh-cn/device-dev/subsystems/subsys-dfx-overview.md
+++ b/zh-cn/device-dev/subsystems/subsys-dfx-overview.md
@@ -9,7 +9,7 @@
- HiLog流水日志,轻量系统类设备(参考内存≥128KiB)、小型系统类设备(参考内存≥1MiB)、标准系统类设备(参考内存≥128MB)适用。
-- HiTrace分布式跟踪,标准系统类设备(参考内存≥128MiB)适用。
+- HiTraceChain分布式跟踪,标准系统类设备(参考内存≥128MiB)适用。
- HiCollie卡死故障检测,标准系统类设备(参考内存≥128MiB)适用。
@@ -45,3 +45,4 @@
**系统事件:**
是OpenHarmony系统某种状态产生的一种标识,通过定义各种事件用于分析系统的状态变化情况。
+
diff --git a/zh-cn/readme/ARK-Runtime-Subsystem-zh.md b/zh-cn/readme/ARK-Runtime-Subsystem-zh.md
index ed7dadfeebf8e3b6d52151abf6331bcb7eb13035..219299721d153e1bef8724a85e7ca96145e7dcec 100644
--- a/zh-cn/readme/ARK-Runtime-Subsystem-zh.md
+++ b/zh-cn/readme/ARK-Runtime-Subsystem-zh.md
@@ -12,13 +12,13 @@
ArkCompiler JS Runtime分成两个部分,分别是JS编译工具链与JS运行时。JS工具链将JS源码编译成方舟字节码\(ArkCompiler Bytecode\),JS运行时负责执行生成的方舟字节码\(后续如无特殊说明,字节码特指方舟字节码\)。
-图1 JS编译工具链架构:
+**图1** JS编译工具链架构:

ArkCompiler JS Runtime的源码编译器接收JS源码的输入,再由ts2abc(将JavaScript文件转换为字节码的工具)生成abc文件。
-图2 JS运行时\(Ark-JS-Runtime\)架构:
+**图2** JS运行时\(Ark-JS-Runtime\)架构:

@@ -73,9 +73,9 @@ JS Runtime主要由四个子系统组成:
```
/ark
-├── js_runtime # JS运行时组件
-├── runtime_core # 运行时公共组件
-└── ts2abc # JS语言的前端工具
+├── ets_runtime # JS运行时组件
+├── runtime_core # 运行时公共组件
+└── ets_frontend # JS语言的前端工具
```
## 使用指南
@@ -84,8 +84,8 @@ JS Runtime主要由四个子系统组成:
## 相关仓
-[ark\_runtime\_core](https://gitee.com/openharmony/ark_runtime_core)
+[arkcompiler\_runtime\_core](https://gitee.com/openharmony/arkcompiler_runtime_core)
-[ark\_js\_runtime](https://gitee.com/openharmony/ark_js_runtime)
+[arkcompiler\_ets\_runtime](https://gitee.com/openharmony/arkcompiler_ets_runtime)
-[ark\_ts2abc](https://gitee.com/openharmony/ark_ts2abc)
+[arkcompiler\_ets\_frontend](https://gitee.com/openharmony/arkcompiler_ets_frontend)
\ No newline at end of file
diff --git "a/zh-cn/readme/DeviceProfile\345\255\220\347\263\273\347\273\237.md" "b/zh-cn/readme/DeviceProfile\345\255\220\347\263\273\347\273\237.md"
index 2831dfc08802621314c8fa80a2e53bd0f06643b7..f69da1c5416b5c0f08bd80e871cc8b71633c3624 100755
--- "a/zh-cn/readme/DeviceProfile\345\255\220\347\263\273\347\273\237.md"
+++ "b/zh-cn/readme/DeviceProfile\345\255\220\347\263\273\347\273\237.md"
@@ -32,27 +32,27 @@ DeviceProfile主要代码目录结构如下:
```
├── interfaces
│ └── innerkits
-│ └── distributeddeviceprofile // 系统内部接口
+│ └── distributeddeviceprofile // innerkits接口
├── ohos.build
├── sa_profile // said声明文件
│ ├── 6001.xml
│ └── BUILD.gn
-├── services
-│ └── distributeddeviceprofile
-│ ├── BUILD.gn
-│ ├── include
-│ │ ├── contentsensor // CS数据采集头文件
-│ │ ├── dbstorage // 数据库操作头文件
-│ │ ├── devicemanager // 设备管理头文件
-│ │ └── subscribemanager // 订阅管理头文件
-│ ├── src
-│ │ ├── contentsensor // CS数据采集实现
-│ │ ├── dbstorage // 数据库操作实现
-│ │ ├── devicemanager // 设备管理实现
-│ │ ├── subscribemanager // 订阅管理实现
-│ └── test // 测试用例
-└── tools
- └── dp // 辅助测试工具
+└── services
+ └── distributeddeviceprofile
+ ├── BUILD.gn
+ ├── include
+ │ ├── authority // 权限校验
+ │ ├── contentsensor // CS数据采集头文件
+ │ ├── dbstorage // 数据库操作头文件
+ │ ├── devicemanager // 设备管理头文件
+ │ └── subscribemanager // 订阅管理头文件
+ ├── src
+ │ ├── authority // 权限校验
+ │ ├── contentsensor // CS数据采集实现
+ │ ├── dbstorage // 数据库操作实现
+ │ ├── devicemanager // 设备管理实现
+ │ └── subscribemanager // 订阅管理实现
+ └── test // 测试用例
```
## 约束
diff --git a/zh-cn/readme/figures/build_framework_ZN.png b/zh-cn/readme/figures/build_framework_ZN.png
new file mode 100644
index 0000000000000000000000000000000000000000..c969b8364b42e032465e94a0d10ad602c77c715e
Binary files /dev/null and b/zh-cn/readme/figures/build_framework_ZN.png differ
diff --git a/zh-cn/readme/figures/dp-architecture_zh.png b/zh-cn/readme/figures/dp-architecture_zh.png
index 58009df7a4cbee4664985e24a0f0f00ed60f88ed..fc103c274aaf2e23596074ee9bd6dee8695f3162 100755
Binary files a/zh-cn/readme/figures/dp-architecture_zh.png and b/zh-cn/readme/figures/dp-architecture_zh.png differ
diff --git "a/zh-cn/readme/\347\274\226\350\257\221\346\236\204\345\273\272\345\255\220\347\263\273\347\273\237.md" "b/zh-cn/readme/\347\274\226\350\257\221\346\236\204\345\273\272\345\255\220\347\263\273\347\273\237.md"
index c1985c112ff950f188a2c5ede068828ec7db7b11..f55f7079d0f5b2fe5787fbc248913a71dc6c2fbd 100644
--- "a/zh-cn/readme/\347\274\226\350\257\221\346\236\204\345\273\272\345\255\220\347\263\273\347\273\237.md"
+++ "b/zh-cn/readme/\347\274\226\350\257\221\346\236\204\345\273\272\345\255\220\347\263\273\347\273\237.md"
@@ -6,7 +6,7 @@
- 根据产品配置可以按照组件组装打包产品需要的能力。
-## 基本概念
+## 简介
在了解编译构建子系统的能力前,应了解如下基本概念:
@@ -31,6 +31,51 @@
ninja是一个专注于速度的小型构建系统。
+## 目录
+
+```text
+/build # 编译构建主目录
+
+├── __pycache__
+├── build_scripts/ # 编译相关的python脚本
+├── common/
+├── config/ # 编译相关的配置项
+├── core
+│ ├── gn/ # 编译入口BUILD.gn配置
+│ └── build_scripts/
+├── docs
+├── gn_helpers.py*
+├── lite/ # hb和preloader入口
+├── misc/
+├── ohos # OpenHarmony编译打包流程配置
+│ ├── kits # kits编译打包模板和处理流程
+│ ├── ndk # ndk模板和处理流程
+│ ├── notice # notice模板和处理流程
+│ ├── packages # 版本打包模板和处理流程
+│ ├── sa_profile # sa模板和处理流程
+│ ├── sdk # sdk模板和处理流程,包括sdk中包含的模块配置
+│ └── testfwk # 测试相关的处理
+├── ohos.gni* # 汇总了常用的gni文件,方便各个模块一次性import
+├── ohos_system.prop
+├── ohos_var.gni*
+├── prebuilts_download.sh* # 预编译脚本
+├── print_python_deps.py*
+├── scripts/
+├── subsystem_config.json
+├── subsystem_config_example.json
+├── templates/ # c/c++编译模板定义
+├── test.gni*
+├── toolchain # 编译工具链配置
+├── tools # 常用工具
+├── version.gni
+├── zip.py*
+```
+
+
+**图 1** 编译构建子系统架构图
+
+
+
## 运作机制
OpenHarmony侧的编译构建流程主要包括以下三个步骤:
@@ -51,9 +96,7 @@ OpenHarmony侧的编译构建流程主要包括以下三个步骤:
## 相关仓
-**编译构建子系统**
-
-[build\_lite](https://gitee.com/openharmony/build_lite)
+[build\_lite](https://gitee.com/openharmony/build_lite/blob/master/README_zh.md)
-[build](https://gitee.com/openharmony/build)
+[build](https://gitee.com/openharmony/build/blob/master/README_zh.md)
diff --git "a/zh-cn/readme/\347\275\221\347\273\234\347\256\241\347\220\206\345\255\220\347\263\273\347\273\237.md" "b/zh-cn/readme/\347\275\221\347\273\234\347\256\241\347\220\206\345\255\220\347\263\273\347\273\237.md"
index 2603d7dac1e653453732807e44956fdd6097c254..5a138c74e854c22b2dd9589b4903f830b9de762c 100644
--- "a/zh-cn/readme/\347\275\221\347\273\234\347\256\241\347\220\206\345\255\220\347\263\273\347\273\237.md"
+++ "b/zh-cn/readme/\347\275\221\347\273\234\347\256\241\347\220\206\345\255\220\347\263\273\347\273\237.md"
@@ -3,7 +3,7 @@
## 简介
-网络管理子系统,作为设备联网的必备组件,提供了对不同类型网络连接的统一管理、流量管理、策略管理、网络共享,并提供了网络协议栈能力。应用可以通过调用API来获取数据网络的连接信息,查询和订阅数据网络的连接状态,网络流量数据,网路策略以及网络共享等,并可通过网络协议栈进行数据传输。
+网络管理子系统,作为设备联网的必备组件,提供了对不同类型网络连接的统一管理、流量管理、策略管理、网络共享,并提供了网络协议栈能力。应用可以通过调用API来获取数据网络的连接信息,查询和订阅数据网络的连接状态,网络流量数据,网络策略以及网络共享等,并可通过网络协议栈进行数据传输。
下图所示为网络管理子系统架构图。各个部件主要作用如下:
@@ -67,7 +67,7 @@ foundation/communication/
conn.unregister((err, data) => {});
```
-### 网路共享
+### 网络共享
1. 从@ohos.net.sharing中导入sharing命名空间。
2. 设定共享类型
diff --git a/zh-cn/release-notes/api-change/v3.2-beta2/readme.md b/zh-cn/release-notes/api-change/v3.2-beta2/readme.md
new file mode 100644
index 0000000000000000000000000000000000000000..8476b049c4b72aa66a01b0a2f14ead8c112afcec
--- /dev/null
+++ b/zh-cn/release-notes/api-change/v3.2-beta2/readme.md
@@ -0,0 +1,35 @@
+# Readme
+
+本目录记录了OpenHarmony 3.2 Beta2版本相较于OpenHarmony 3.2 Beta1版本的API变化,包括新增、变更、废弃、删除。
+
+- JS API差异报告
+ - [元能力](js-apidiff-ability.md)
+ - [无障碍](js-apidiff-accessibility.md)
+ - [帐号](js-apidiff-account.md)
+ - [ArkUI](js-apidiff-arkui.md)
+ - [包管理](js-apidiff-bundle.md)
+ - [基础通信](js-apidiff-communicate.md)
+ - [公共基础库](js-apidiff-compiler-and-runtime.md)
+ - [DFX](js-apidiff-dfx.md)
+ - [分布式数据管理](js-apidiff-distributed-data.md)
+ - [事件通知](js-apidiff-event-and-notification.md)
+ - [文件管理](js-apidiff-file-management.md)
+ - [位置服务](js-apidiff-geolocation.md)
+ - [全球化](js-apidiff-global.md)
+ - [图形图像](js-apidiff-graphic.md)
+ - [Misc](js-apidiff-misc.md)
+ - [多模输入](js-apidiff-multi-modal-input.md)
+ - [多媒体](js-apidiff-multimedia.md)
+ - [资源调度](js-apidiff-resource-scheduler.md)
+ - [安全](js-apidiff-security.md)
+ - [泛Sensor](js-apidiff-sensor.md)
+ - [分布式软总线](js-apidiff-soft-bus.md)
+ - [测试框架](js-apidiff-unitest.md)
+ - [升级服务](js-apidiff-update.md)
+ - [USB服务](js-apidiff-usb.md)
+ - [用户身份认证](js-apidiff-user-authentication.md)
+ - [Web](js-apidiff-web.md)
+ - [窗口管理](js-apidiff-window.md)
+- 变更说明
+ - [3.2 beta2相对3.2 beta1变更详细说明](changelog-v3.2-beta2.md)
+ - [OpenHarmony启用应用沙箱机制-适配指导](application-sandbox-adaptation-guide.md)
diff --git a/zh-cn/release-notes/api-change/v3.2-beta3/js-apidiff-ability.md b/zh-cn/release-notes/api-change/v3.2-beta3/js-apidiff-ability.md
new file mode 100644
index 0000000000000000000000000000000000000000..6534f50cb897a8d9f41d55ec99a548e76b711de4
--- /dev/null
+++ b/zh-cn/release-notes/api-change/v3.2-beta3/js-apidiff-ability.md
@@ -0,0 +1,106 @@
+# 元能力子系统JS API变更
+
+OpenHarmony 3.2 Beta3版本相较于OpenHarmony 3.2 Beta2版本,元能力子系统的API变更如下:
+
+## 接口变更
+
+| 模块名 | 类名 | 方法/属性/枚举/常量 | 变更类型 |
+|---|---|---|---|
+| abilityDelegator | AbilityDelegator | waitAbilityStageMonitor(monitor: AbilityStageMonitor, callback: AsyncCallback\): void; waitAbilityStageMonitor(monitor: AbilityStageMonitor, timeout: number, callback: AsyncCallback\): void; waitAbilityStageMonitor(monitor: AbilityStageMonitor, timeout?: number): Promise\; | 新增 |
+| abilityDelegator | AbilityDelegator | removeAbilityStageMonitor(monitor: AbilityStageMonitor, callback: AsyncCallback\): void; removeAbilityStageMonitor(monitor: AbilityStageMonitor): Promise\; | 新增 |
+| abilityDelegator | AbilityDelegator | addAbilityStageMonitor(monitor: AbilityStageMonitor, callback: AsyncCallback\): void; addAbilityStageMonitor(monitor: AbilityStageMonitor): Promise\; | 新增 |
+| abilityStageMonitor | AbilityStageMonitor | srcEntrance: string; | 新增 |
+| abilityStageMonitor | AbilityStageMonitor | moduleName: string; | 新增 |
+| applicationInfo | ApplicationInfo | readonly iconIndex: number; | 新增 |
+| applicationInfo | ApplicationInfo | readonly labelIndex: number; | 新增 |
+| ApplicationStateObserver | ApplicationStateObserver | onProcessStateChanged(processData: ProcessData): void; | 新增 |
+| context | Context | getExternalCacheDir(callback: AsyncCallback\): void getExternalCacheDir(): Promise\; | 新增 |
+| lifecycle | LifecycleForm | onShare?(formId: string): {[key: string]: any}; | 新增 |
+| MissionListener | MissionListener | onMissionClosed(mission: number): void; | 新增 |
+| ohos.ability.wantConstant | Action | DLP_PARAMS_INDEX = "ohos.dlp.params.index" | 新增 |
+| ohos.ability.wantConstant | Action | DLP_PARAMS_ABILITY_NAME = "ohos.dlp.params.abilityName" | 新增 |
+| ohos.ability.wantConstant | Action | DLP_PARAMS_MODULE_NAME = "ohos.dlp.params.moduleName" | 新增 |
+| ohos.ability.wantConstant | Action | DLP_PARAMS_BUNDLE_NAME = "ohos.dlp.params.bundleName" | 新增 |
+| ohos.ability.wantConstant | Action | DLP_PARAMS_SANDBOX = "ohos.dlp.params.sandbox" | 新增 |
+| ohos.ability.wantConstant | Action | ACTION_MARKET_CROWDTEST = "ohos.want.action.marketCrowdTest" | 新增 |
+| ohos.ability.wantConstant | Action | ACTION_MARKET_DOWNLOAD = "ohos.want.action.marketDownload" | 新增 |
+| ohos.abilityAccessCtrl | PermissionStateChangeInfo | permissionName: string; | 新增 |
+| ohos.abilityAccessCtrl | PermissionStateChangeInfo | tokenID: number; | 新增 |
+| ohos.abilityAccessCtrl | PermissionStateChangeInfo | change: PermissionStateChangeType; | 新增 |
+| ohos.abilityAccessCtrl | PermissionStateChangeType | PERMISSION_GRANTED_OPER = 1 | 新增 |
+| ohos.abilityAccessCtrl | PermissionStateChangeType | PERMISSION_REVOKED_OPER = 0 | 新增 |
+| ohos.abilityAccessCtrl | AtManager | off(type: 'permissionStateChange', tokenIDList: Array\, permissionNameList: Array\, callback?: Callback\): void; | 新增 |
+| ohos.abilityAccessCtrl | AtManager | on(type: 'permissionStateChange', tokenIDList: Array\, permissionNameList: Array\, callback: Callback\): void; | 新增 |
+| ohos.abilityAccessCtrl | AtManager | getVersion(): Promise\; | 新增 |
+| ohos.application.Ability | Ability | onMemoryLevel(level: AbilityConstant.MemoryLevel): void; | 新增 |
+| ohos.application.AbilityConstant | WindowMode | WINDOW_MODE_FLOATING = 102 | 新增 |
+| ohos.application.AbilityConstant | WindowMode | WINDOW_MODE_SPLIT_SECONDARY = 101 | 新增 |
+| ohos.application.AbilityConstant | WindowMode | WINDOW_MODE_SPLIT_PRIMARY = 100 | 新增 |
+| ohos.application.AbilityConstant | WindowMode | WINDOW_MODE_FULLSCREEN = 1 | 新增 |
+| ohos.application.AbilityConstant | WindowMode | WINDOW_MODE_UNDEFINED = 0 | 新增 |
+| ohos.application.AbilityConstant | MemoryLevel | MEMORY_LEVEL_CRITICAL = 2 | 新增 |
+| ohos.application.AbilityConstant | MemoryLevel | MEMORY_LEVEL_LOW = 1 | 新增 |
+| ohos.application.AbilityConstant | MemoryLevel | MEMORY_LEVEL_MODERATE = 0 | 新增 |
+| ohos.application.AbilityLifecycleCallback | AbilityLifecycleCallback | onWindowStageDestroy(ability: Ability, windowStage: window.WindowStage): void; | 新增 |
+| ohos.application.AbilityLifecycleCallback | AbilityLifecycleCallback | onWindowStageInactive(ability: Ability, windowStage: window.WindowStage): void; | 新增 |
+| ohos.application.AbilityLifecycleCallback | AbilityLifecycleCallback | onWindowStageActive(ability: Ability, windowStage: window.WindowStage): void; | 新增 |
+| ohos.application.AbilityLifecycleCallback | AbilityLifecycleCallback | onWindowStageCreate(ability: Ability, windowStage: window.WindowStage): void; | 新增 |
+| ohos.application.AbilityStage | AbilityStage | onMemoryLevel(level: AbilityConstant.MemoryLevel): void; | 新增 |
+| ohos.application.appManager | ProcessState | STATE_DESTROY | 新增 |
+| ohos.application.appManager | ProcessState | STATE_BACKGROUND | 新增 |
+| ohos.application.appManager | ProcessState | STATE_ACTIVE | 新增 |
+| ohos.application.appManager | ProcessState | STATE_FOREGROUND | 新增 |
+| ohos.application.appManager | ProcessState | STATE_CREATE | 新增 |
+| ohos.application.appManager | ApplicationState | STATE_DESTROY | 新增 |
+| ohos.application.appManager | ApplicationState | STATE_BACKGROUND | 新增 |
+| ohos.application.appManager | ApplicationState | STATE_ACTIVE | 新增 |
+| ohos.application.appManager | ApplicationState | STATE_FOREGROUND | 新增 |
+| ohos.application.appManager | ApplicationState | STATE_CREATE | 新增 |
+| ohos.application.Configuration | Configuration | hasPointerDevice?: boolean; | 新增 |
+| ohos.application.context | AreaMode | EL2 = 1 | 新增 |
+| ohos.application.context | AreaMode | EL1 = 0 | 新增 |
+| ohos.application.formError | FormError | ERR_DISTRIBUTED_SCHEDULE_FAILED = 37 | 新增 |
+| ohos.application.FormExtension | FormExtension | onShare?(formId: string): {[key: string]: any}; | 新增 |
+| ohos.application.formHost | formHost | function shareForm(formId: string, deviceId: string, callback: AsyncCallback\): void; function shareForm(formId: string, deviceId: string): Promise\; | 新增 |
+| ohos.application.formInfo | VisibilityType | FORM_INVISIBLE: number | 新增 |
+| ohos.application.formInfo | VisibilityType | FORM_VISIBLE: number, | 新增 |
+| ohos.application.formInfo | FormDimension | Dimension_2_1 | 新增 |
+| ohos.application.formInfo | FormDimension | Dimension_4_4 | 新增 |
+| ohos.application.formInfo | FormDimension | Dimension_2_4 | 新增 |
+| ohos.application.formInfo | FormDimension | Dimension_2_2 | 新增 |
+| ohos.application.formInfo | FormDimension | Dimension_1_2 = 1 | 新增 |
+| ohos.application.formInfo | FormParam | DEVICE_ID_KEY = "ohos.extra.param.key.device_id" | 新增 |
+| ohos.application.formInfo | FormParam | ABILITY_NAME_KEY = "ohos.extra.param.key.ability_name" | 新增 |
+| ohos.application.formInfo | FormParam | BUNDLE_NAME_KEY = "ohos.extra.param.key.bundle_name" | 新增 |
+| ohos.application.quickFixManager | quickFixManager | function getApplicationQuickFixInfo(bundleName: string, callback: AsyncCallback\): void; function getApplicationQuickFixInfo(bundleName: string): Promise\; | 新增 |
+| ohos.application.quickFixManager | quickFixManager | function applyQuickFix(hapModuleQuickFixFiles: Array\, callback: AsyncCallback\): void; function applyQuickFix(hapModuleQuickFixFiles: Array\): Promise\; | 新增 |
+| ohos.application.quickFixManager | ApplicationQuickFixInfo | readonly hapModuleQuickFixInfo: Array\; | 新增 |
+| ohos.application.quickFixManager | ApplicationQuickFixInfo | readonly quickFixVersionName: string; | 新增 |
+| ohos.application.quickFixManager | ApplicationQuickFixInfo | readonly quickFixVersionCode: number; | 新增 |
+| ohos.application.quickFixManager | ApplicationQuickFixInfo | readonly bundleVersionName: string; | 新增 |
+| ohos.application.quickFixManager | ApplicationQuickFixInfo | readonly bundleVersionCode: number; | 新增 |
+| ohos.application.quickFixManager | ApplicationQuickFixInfo | readonly bundleName: string; | 新增 |
+| ohos.application.quickFixManager | HapModuleQuickFixInfo | readonly quickFixFilePath: string; | 新增 |
+| ohos.application.quickFixManager | HapModuleQuickFixInfo | readonly originHapHash: string; | 新增 |
+| ohos.application.quickFixManager | HapModuleQuickFixInfo | readonly moduleName: string; | 新增 |
+| ProcessData | ProcessData | isKeepAlive: boolean; | 新增 |
+| ProcessData | ProcessData | isContinuousTask: boolean; | 新增 |
+| ProcessData | ProcessData | state: number; | 新增 |
+| ServiceExtensionContext | ServiceExtensionContext | startAbilityByCall(want: Want): Promise\; | 新增 |
+| ohos.ability.wantConstant | Action | ACTION_MARKER_DOWNLOAD = "ohos.want.action.marketDownload" | 删除 |
+| ohos.application.AbilityLifecycleCallback | AbilityLifecycleCallback | onAbilityWindowStageDestroy(ability: Ability): void; | 删除 |
+| ohos.application.AbilityLifecycleCallback | AbilityLifecycleCallback | onAbilityWindowStageCreate(ability: Ability): void; | 删除 |
+| ohos.application.DataShareExtensionAbility | DataShareExtensionAbility | getType?(uri: string, callback: AsyncCallback\): void; | 删除 |
+| ohos.application.DataShareExtensionAbility | DataShareExtensionAbility | openFile?(uri: string, mode: string, callback: AsyncCallback\): void; | 删除 |
+| ohos.application.DataShareExtensionAbility | DataShareExtensionAbility | getFileTypes?(uri: string, mimeTypeFilter: string, callback: AsyncCallback\>): void; | 删除 |
+| applicationInfo | ApplicationInfo | readonly iconId: string; | 废弃 |
+| applicationInfo | ApplicationInfo | readonly labelId: string; | 废弃 |
+| want | Want | entities?: Array\; | 废弃 |
+| want | Want | parameters?: {[key: string]: any}; | 废弃 |
+| want | Want | action?: string; | 废弃 |
+| want | Want | flags?: number; | 废弃 |
+| want | Want | type?: string; | 废弃 |
+| want | Want | uri?: string; | 废弃 |
+| want | Want | abilityName?: string; | 废弃 |
+| want | Want | bundleName?: string; | 废弃 |
+| want | Want | deviceId?: string; | 废弃 |
\ No newline at end of file
diff --git a/zh-cn/release-notes/api-change/v3.2-beta3/js-apidiff-accessibility.md b/zh-cn/release-notes/api-change/v3.2-beta3/js-apidiff-accessibility.md
new file mode 100644
index 0000000000000000000000000000000000000000..5ac8a37598fca9dbc2d9303fd9f5f125eceddf81
--- /dev/null
+++ b/zh-cn/release-notes/api-change/v3.2-beta3/js-apidiff-accessibility.md
@@ -0,0 +1,31 @@
+# 无障碍子系统JS API变更
+
+OpenHarmony 3.2 Beta3版本相较于OpenHarmony 3.2 Beta2版本,无障碍子系统的API变更如下:
+
+## 接口变更
+
+| 模块名 | 类名 | 方法/属性/枚举/常量 | 变更类型 |
+|---|---|---|---|
+| AccessibilityExtensionContext | AccessibilityExtensionContext | injectGesture(gesturePath: GesturePath): Promise\; injectGesture(gesturePath: GesturePath, callback: AsyncCallback\): void; | 新增 |
+| ohos.accessibility.config | Config | off(callback?: Callback\): void; | 新增 |
+| ohos.accessibility.config | Config | on(callback: Callback\): void; | 新增 |
+| ohos.accessibility.config | Config | get(): Promise\; get(callback: AsyncCallback\): void; | 新增 |
+| ohos.accessibility.config | Config | set(value: T): Promise\; set(value: T, callback: AsyncCallback\): void; | 新增 |
+| ohos.accessibility.config | config | function off(type: 'enableAbilityListsStateChanged', callback?: Callback\): void; | 新增 |
+| ohos.accessibility.config | config | function on(type: 'enableAbilityListsStateChanged', callback: Callback\): void; | 新增 |
+| ohos.accessibility.config | config | function disableAbility(name: string): Promise\; function disableAbility(name: string, callback: AsyncCallback\): void; | 新增 |
+| ohos.accessibility.config | config | function enableAbility(name: string, capability: Array\): Promise\; function enableAbility(name: string, capability: Array\, callback: AsyncCallback\): void; | 新增 |
+| ohos.accessibility.config | config | var captionsStyle: Config\; | 新增 |
+| ohos.accessibility.config | config | var captions: Config\; | 新增 |
+| ohos.accessibility.config | config | var shortkeyTarget: Config\; | 新增 |
+| ohos.accessibility.config | config | var shortkey: Config\; | 新增 |
+| ohos.accessibility.config | config | var mouseAutoClick: Config\
|