diff --git a/en/application-dev/reference/apis/js-apis-sensor.md b/en/application-dev/reference/apis/js-apis-sensor.md
index 5b9107af6a142f762171272278e3ea543bb93b81..7df95d23175b36a0e4aefa65ea0b04c1862a2c94 100644
--- a/en/application-dev/reference/apis/js-apis-sensor.md
+++ b/en/application-dev/reference/apis/js-apis-sensor.md
@@ -22,720 +22,888 @@ A sensor is a device to detect events or changes in an environment and send mess
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
-Subscribes to data changes of the acceleration sensor. If this API is called multiple times for the same application, the last call takes effect.
+Subscribes to data of the acceleration sensor.
-**Required permissions**: ohos.permission.ACCELEROMETER (a system permission)
+**Required permissions**: ohos.permission.ACCELEROMETER
**System capability**: SystemCapability.Sensors.Sensor
**Parameters**
-| Name | Type | Mandatory | Description |
-| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
-| type | [SensorType](#sensortype) | Yes | Type of the sensor to subscribe to, which is **SENSOR_TYPE_ID_ACCELEROMETER**.|
-| callback | Callback<[AccelerometerResponse](#accelerometerresponse)> | Yes | Callback used to return the acceleration sensor data. The reported data type in the callback is **AccelerometerResponse**.|
-| options | [Options](#options) | No | Interval at which the callback is invoked to return the sensor data. The default value is 200,000,000 ns. |
+| Name | Type | Mandatory| Description |
+| -------- | ------------------------------------------------------------ | ---- | ------------------------------------------------------------ |
+| type | [SensorId](#sensorid9) | Yes | Type of the sensor to subscribe to, which is **ACCELEROMETER**. |
+| callback | Callback<[AccelerometerResponse](#accelerometerresponse)> | Yes | Callback used to return the acceleration sensor data. The reported data type in the callback is **AccelerometerResponse**.|
+| options | [Options](#options) | No | Interval at which the callback is invoked to return the sensor data. The default value is 200,000,000 ns. |
+
+**Error code**
+
+For details about the following error codes, see [Error Codes of ohos.sensor](../errorcodes/errorcode-sensor.md).
+
+| Error Code ID| Error Message |
+| -------- | ------------------ |
+| 14500101 | Service exception. |
**Example**
- ```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_ACCELERATIONdeprecated
+```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+
-Subscribes to data changes of the linear acceleration sensor. If this API is called multiple times for the same application, the last call takes effect.
+on(type: SensorId.ACCELEROMETER_UNCALIBRATED, callback: Callback<AccelerometerUncalibratedResponse>,options?: Options): void
-This API is deprecated since API version 9. You are advised to use **Sensor.on.LINEAR_ACCELEROMETER9+** instead.
+Subscribes to data of the uncalibrated acceleration sensor.
-**Required permissions**: ohos.permission.ACCELEROMETER (a system permission)
+**Required permissions**: ohos.permission.ACCELEROMETER
**System capability**: SystemCapability.Sensors.Sensor
**Parameters**
-| Name | Type | Mandatory | Description |
-| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
-| type | [SensorType](#sensortype) | Yes | Type of the sensor to subscribe to, which is **SENSOR_TYPE_ID_LINEAR_ACCELERATION**.|
-| callback | Callback<[LinearAccelerometerResponse](#linearaccelerometerresponse)> | Yes | Callback used to return the linear acceleration sensor data. The reported data type in the callback is **LinearAccelerometerResponse**.|
-| options | [Options](#options) | No | Interval at which the callback is invoked to return the sensor data. The default value is 200,000,000 ns. |
+
+| Name | Type | Mandatory| Description |
+| -------- | ------------------------------------------------------------ | ---- | ------------------------------------------------------------ |
+| type | [SensorId](#sensorid9) | Yes | Type of the sensor to subscribe to, which is **ACCELEROMETER_UNCALIBRATED**.|
+| callback | Callback<[AccelerometerUncalibratedResponse](#accelerometeruncalibratedresponse)> | Yes | Callback used to return the uncalibrated acceleration sensor data. The reported data type in the callback is **AccelerometerUncalibratedResponse**.|
+| options | [Options](#options) | No | Interval at which the callback is invoked to return the sensor data. The default value is 200,000,000 ns. |
+
+**Error code**
+
+For details about the following error codes, see [Error Codes of ohos.sensor](../errorcodes/errorcode-sensor.md).
+
+| Error Code ID| Error Message |
+| -------- | ------------------ |
+| 14500101 | Service exception. |
**Example**
- ```js
- sensor.on(sensor.SensorType.SENSOR_TYPE_ID_LINEAR_ACCELERATION,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_ACCELEROMETER9+
+```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);
+}
+```
-on(type: SensorType.SENSOR_TYPE_ID_LINEAR_ACCELEROMETER,callback:Callback<LinearAccelerometerResponse>, options?: Options): void
+### AMBIENT_LIGHT9+
-Subscribes to data changes of the linear acceleration sensor. If this API is called multiple times for the same application, the last call takes effect.
+on(type: SensorId.AMBIENT_LIGHT, callback: Callback<LightResponse>, options?: Options): void
-**Required permissions**: ohos.permission.ACCELEROMETER (a system permission)
+Subscribes to data of the ambient light sensor.
**System capability**: SystemCapability.Sensors.Sensor
**Parameters**
-| Name | Type | Mandatory | Description |
-| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
-| type | [SensorType](#sensortype) | Yes | Type of the sensor to subscribe to, which is **SENSOR_TYPE_ID_LINEAR_ACCELEROMETER**.|
-| callback | Callback<[LinearAccelerometerResponse](#linearaccelerometerresponse)> | Yes | Callback used to return the linear acceleration sensor data. The reported data type in the callback is **LinearAccelerometerResponse**.|
-| options | [Options](#options) | No | Interval at which the callback is invoked to return the sensor data. The default value is 200,000,000 ns. |
+
+| Name | Type | Mandatory| Description |
+| -------- | ----------------------------------------------- | ---- | ----------------------------------------------------------- |
+| type | [SensorId](#sensorid9) | Yes | Type of the sensor to subscribe to, which is **AMBIENT_LIGHT**. |
+| callback | Callback<[LightResponse](#lightresponse)> | Yes | Callback used to return the ambient light sensor data. The reported data type in the callback is **LightResponse**.|
+| options | [Options](#options) | No | Interval at which the callback is invoked to return the sensor data. The default value is 200,000,000 ns. |
+
+**Error code**
+
+For details about the following error codes, see [Error Codes of ohos.sensor](../errorcodes/errorcode-sensor.md).
+
+| Error Code ID| Error Message |
+| -------- | ------------------ |
+| 14500101 | Service exception. |
**Example**
- ```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_LIGHT,function(data){
+ console.info('Illumination: ' + data.intensity);
+ }, {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
+### AMBIENT_TEMPERATURE9+
-Subscribes to data changes of the uncalibrated acceleration sensor. If this API is called multiple times for the same application, the last call takes effect.
+on(type: SensorId.AMBIENT_TEMPERATURE, callback: Callback<AmbientTemperatureResponse>,options?: Options): void
-**Required permissions**: ohos.permission.ACCELEROMETER (a system permission)
+Subscribes to data of the ambient temperature sensor.
**System capability**: SystemCapability.Sensors.Sensor
**Parameters**
-| Name | Type | Mandatory | Description |
-| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
-| type | [SensorType](#sensortype) | Yes | Type of the sensor to subscribe to, which is **SENSOR_TYPE_ID_ACCELEROMETER_UNCALIBRATED**.|
-| callback | Callback<[AccelerometerUncalibratedResponse](#accelerometeruncalibratedresponse)> | Yes | Callback used to return the uncalibrated acceleration sensor data. The reported data type in the callback is **AccelerometerUncalibratedResponse**.|
-| options | [Options](#options) | No | Interval at which the callback is invoked to return the sensor data. The default value is 200,000,000 ns. |
+
+| Name | Type | Mandatory| Description |
+| -------- | ------------------------------------------------------------ | ---- | ------------------------------------------------------------ |
+| type | [SensorId](#sensorid9) | Yes | Type of the sensor to subscribe to, which is **AMBIENT_TEMPERATURE**. |
+| callback | Callback<[AmbientTemperatureResponse](#ambienttemperatureresponse)> | Yes | Callback used to return the ambient temperature sensor data. The reported data type in the callback is **AmbientTemperatureResponse**.|
+| options | [Options](#options) | No | Interval at which the callback is invoked to return the sensor data. The default value is 200,000,000 ns. |
+
+**Error code**
+
+For details about the following error codes, see [Error Codes of ohos.sensor](../errorcodes/errorcode-sensor.md).
+
+| Error Code ID| Error Message |
+| -------- | ------------------ |
+| 14500101 | Service exception. |
**Example**
- ```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
+```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);
+}
+```
+
+### BAROMETER9+
-on(type: SensorType.SENSOR_TYPE_ID_GRAVITY, callback: Callback<GravityResponse>,options?: Options): void
+on(type: SensorId.BAROMETER, callback: Callback<BarometerResponse>, options?: Options): void
-Subscribes to data changes of the gravity sensor. If this API is called multiple times for the same application, the last call takes effect.
+Subscribes to data of the barometer sensor.
**System capability**: SystemCapability.Sensors.Sensor
**Parameters**
-| Name | Type | Mandatory | Description |
-| -------- | ---------------------------------------- | ---- | ------------------------------------- |
-| type | [SensorType](#sensortype) | Yes | Type of the sensor to subscribe to, which is **SENSOR_TYPE_ID_GRAVITY**. |
-| callback | Callback<[GravityResponse](#gravityresponse)> | Yes | Callback used to return the gravity sensor data. The reported data type in the callback is **GravityResponse**.|
-| options | [Options](#options) | No | Interval at which the callback is invoked to return the sensor data. The default value is 200,000,000 ns. |
+
+| Name | Type | Mandatory| Description |
+| -------- | ------------------------------------------------------- | ---- | ------------------------------------------------------------ |
+| type | [SensorId](#sensorid9) | Yes | Type of the sensor to subscribe to, which is **BAROMETER**. |
+| callback | Callback<[BarometerResponse](#barometerresponse)> | Yes | Callback used to return the barometer sensor data. The reported data type in the callback is **BarometerResponse**.|
+| options | [Options](#options) | No | Interval at which the callback is invoked to return the sensor data. The default value is 200,000,000 ns. |
+
+**Error code**
+
+For details about the following error codes, see [Error Codes of ohos.sensor](../errorcodes/errorcode-sensor.md).
+
+| Error Code ID| Error Message |
+| -------- | ------------------ |
+| 14500101 | Service exception. |
**Example**
- ```js
- sensor.on(sensor.SensorType.SENSOR_TYPE_ID_GRAVITY,function(data){
+
+```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
+
+Subscribes to data of the gravity sensor.
+
+**System capability**: SystemCapability.Sensors.Sensor
+
+**Parameters**
+
+| Name | Type | Mandatory| Description |
+| -------- | --------------------------------------------------- | ---- | ----------------------------------------------------------- |
+| type | [SensorId](#sensorid9) | Yes | Type of the sensor to subscribe to, which is **GRAVITY**. |
+| callback | Callback<[GravityResponse](#gravityresponse)> | Yes | Callback used to return the gravity sensor data. The reported data type in the callback is **GravityResponse**.|
+| options | [Options](#options) | No | Interval at which the callback is invoked to return the sensor data. The default value is 200,000,000 ns. |
+
+**Error code**
+
+For details about the following error codes, see [Error Codes of ohos.sensor](../errorcodes/errorcode-sensor.md).
+
+| Error Code ID| Error Message |
+| -------- | ------------------ |
+| 14500101 | Service exception. |
+
+**Example**
+
+```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
-Subscribes to data changes of the gyroscope sensor. If this API is called multiple times for the same application, the last call takes effect.
+Subscribes to data of the gyroscope sensor.
-**Required permissions**: ohos.permission.GYROSCOPE (a system permission)
+**Required permissions**: ohos.permission.GYROSCOPE
**System capability**: SystemCapability.Sensors.Sensor
**Parameters**
-| Name | Type | Mandatory | Description |
-| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
-| type | [SensorType](#sensortype) | Yes | Type of the sensor to subscribe to, which is **SENSOR_TYPE_ID_GYROSCOPE**. |
-| callback | Callback<[GyroscopeResponse](#gyroscoperesponse)> | Yes | Callback used to return the gyroscope sensor data. The reported data type in the callback is **GyroscopeResponse**.|
-| options | [Options](#options) | No | Interval at which the callback is invoked to return the sensor data. The default value is 200,000,000 ns. |
+
+| Name | Type | Mandatory| Description |
+| -------- | ------------------------------------------------------- | ---- | ------------------------------------------------------------ |
+| type | [SensorId](#sensorid9) | Yes | Type of the sensor to subscribe to, which is **GYROSCOPE**. |
+| callback | Callback<[GyroscopeResponse](#gyroscoperesponse)> | Yes | Callback used to return the gyroscope sensor data. The reported data type in the callback is **GyroscopeResponse**.|
+| options | [Options](#options) | No | Interval at which the callback is invoked to return the sensor data. The default value is 200,000,000 ns. |
+
+**Error code**
+
+For details about the following error codes, see [Error Codes of ohos.sensor](../errorcodes/errorcode-sensor.md).
+
+| Error Code ID| Error Message |
+| -------- | ------------------ |
+| 14500101 | Service exception. |
**Example**
- ```js
- sensor.on(sensor.SensorType.SENSOR_TYPE_ID_GYROSCOPE,function(data){
+
+```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
-Subscribes to data changes of the uncalibrated gyroscope sensor. If this API is called multiple times for the same application, the last call takes effect.
+Subscribes to data of the uncalibrated gyroscope sensor.
-**Required permissions**: ohos.permission.GYROSCOPE (a system permission)
+**Required permissions**: ohos.permission.GYROSCOPE
-**System capability**: SystemCapability.Sensors.Sensor
+**System capability**: SystemCapability.Sensors.Sensor
**Parameters**
-| Name | Type | Mandatory | Description |
-| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
-| type | [SensorType](#sensortype) | Yes | Type of the sensor to subscribe to, which is **SENSOR_TYPE_ID_GYROSCOPE_UNCALIBRATED**.|
-| callback | Callback<[GyroscopeUncalibratedResponse](#gyroscopeuncalibratedresponse)> | Yes | Callback used to return the uncalibrated gyroscope sensor data. The reported data type in the callback is **GyroscopeUncalibratedResponse**.|
-| options | [Options](#options) | No | Interval at which the callback is invoked to return the sensor data. |
+
+| Name | Type | Mandatory| Description |
+| -------- | ------------------------------------------------------------ | ---- | ------------------------------------------------------------ |
+| type | [SensorId](#sensorid9) | Yes | Type of the sensor to subscribe to, which is **GYROSCOPE_UNCALIBRATED**. |
+| callback | Callback<[GyroscopeUncalibratedResponse](#gyroscopeuncalibratedresponse)> | Yes | Callback used to return the uncalibrated gyroscope sensor data. The reported data type in the callback is **GyroscopeUncalibratedResponse**.|
+| options | [Options](#options) | No | Interval at which the callback is invoked to return the sensor data. The default value is 200,000,000 ns. |
+
+**Error code**
+
+For details about the following error codes, see [Error Codes of ohos.sensor](../errorcodes/errorcode-sensor.md).
+
+| Error Code ID| Error Message |
+| -------- | ------------------ |
+| 14500101 | Service exception. |
**Example**
- ```js
- sensor.on(sensor.SensorType.SENSOR_TYPE_ID_GYROSCOPE_UNCALIBRATED,function(data){
+
+```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
-Subscribes to data changes of the significant motion sensor. If this API is called multiple times for the same application, the last call takes effect.
+Subscribes to data of the Hall effect sensor.
**System capability**: SystemCapability.Sensors.Sensor
**Parameters**
-| Name | Type | Mandatory | Description |
-| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
-| type | [SensorType](#sensortype) | Yes | Type of the sensor to subscribe to, which is **SENSOR_TYPE_ID_SIGNIFICANT_MOTION**.|
-| callback | Callback<[SignificantMotionResponse](#significantmotionresponse)> | Yes | Callback used to return the significant motion sensor data. The reported data type in the callback is **SignificantMotionResponse**.|
-| options | [Options](#options) | No | Interval at which the callback is invoked to return the sensor data. The default value is 200,000,000 ns. |
+
+| Name | Type | Mandatory| Description |
+| -------- | --------------------------------------------- | ---- | ------------------------------------------------------------ |
+| type | [SensorId](#sensorid9) | Yes | Type of the sensor to subscribe to, which is **HALL**. |
+| callback | Callback<[HallResponse](#hallresponse)> | Yes | Callback used to return the Hall effect sensor data. The reported data type in the callback is **HallResponse**.|
+| options | [Options](#options) | No | Interval at which the callback is invoked to return the sensor data. The default value is 200,000,000 ns. |
+
+**Error code**
+
+For details about the following error codes, see [Error Codes of ohos.sensor](../errorcodes/errorcode-sensor.md).
+
+| Error Code ID| Error Message |
+| -------- | ------------------ |
+| 14500101 | Service exception. |
**Example**
- ```js
- sensor.on(sensor.SensorType.SENSOR_TYPE_ID_SIGNIFICANT_MOTION,function(data){
- console.info('Scalar data: ' + data.scalar);
- },
- {interval: 10000000}
- );
- ```
-### PEDOMETER_DETECTION
+```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);
+}
+```
-on(type: SensorType.SENSOR_TYPE_ID_PEDOMETER_DETECTION, callback: Callback<PedometerDetectionResponse>, options?: Options): void
+### HEART_RATE9+
-Subscribes to data changes of the pedometer detection sensor. If this API is called multiple times for the same application, the last call takes effect.
+on(type: SensorId.HEART_RATE, callback: Callback<HeartRateResponse>,options?: Options): void
-**Required permissions**: ohos.permission.ACTIVITY_MOTION
+Subscribes to data of the heart rate sensor.
+
+**Required permissions**: ohos.permission.READ_HEALTH_DATA
**System capability**: SystemCapability.Sensors.Sensor
**Parameters**
-| Name | Type | Mandatory | Description |
-| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
-| type | [SensorType](#sensortype) | Yes | Type of the sensor to subscribe to, which is **SENSOR_TYPE_ID_PEDOMETER_DETECTION**.|
-| callback | Callback<[PedometerDetectionResponse](#pedometerdetectionresponse)> | Yes | Callback used to return the pedometer detection sensor data. The reported data type in the callback is **PedometerDetectionResponse**.|
-| options | [Options](#options) | No | Interval at which the callback is invoked to return the sensor data. The default value is 200,000,000 ns. |
+
+| Name | Type | Mandatory| Description |
+| -------- | ------------------------------------------------------- | ---- | ------------------------------------------------------------ |
+| type | [SensorId](#sensorid9) | Yes | Type of the sensor to subscribe to, which is **HEART_RATE**. |
+| callback | Callback<[HeartRateResponse](#heartrateresponse)> | Yes | Callback used to return the heart rate sensor data. The reported data type in the callback is **HeartRateResponse**.|
+| options | [Options](#options) | No | Interval at which the callback is invoked to return the sensor data. The default value is 200,000,000 ns. |
+
+**Error code**
+
+For details about the following error codes, see [Error Codes of ohos.sensor](../errorcodes/errorcode-sensor.md).
+
+| Error Code ID| Error Message |
+| -------- | ------------------ |
+| 14500101 | Service exception. |
**Example**
- ```js
- sensor.on(sensor.SensorType.SENSOR_TYPE_ID_PEDOMETER_DETECTION,function(data){
- console.info('Scalar data: ' + data.scalar);
- },
- {interval: 10000000}
- );
- ```
-### PEDOMETER
+```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);
+}
+```
-on(type: SensorType.SENSOR_TYPE_ID_PEDOMETER, callback: Callback<PedometerResponse>, options?: Options): void
+### HUMIDITY9+
-Subscribes to data changes of the pedometer sensor. If this API is called multiple times for the same application, the last call takes effect.
+on(type: SensorId.HUMIDITY, callback: Callback<HumidityResponse>,options?: Options): void
-**Required permissions**: ohos.permission.ACTIVITY_MOTION
+Subscribes to data of the humidity sensor.
**System capability**: SystemCapability.Sensors.Sensor
**Parameters**
-| Name | Type | Mandatory | Description |
-| -------- | ---------------------------------------- | ---- | --------------------------------------- |
-| type | [SensorType](#sensortype) | Yes | Type of the sensor to subscribe to, which is **SENSOR_TYPE_ID_PEDOMETER**. |
-| callback | Callback<[PedometerResponse](#pedometerresponse)> | Yes | Callback used to return the pedometer sensor data. The reported data type in the callback is **PedometerResponse**.|
-| options | [Options](#options) | No | Interval at which the callback is invoked to return the sensor data. The default value is 200,000,000 ns. |
+
+| Name | Type | Mandatory| Description |
+| -------- | ----------------------------------------------------- | ---- | ------------------------------------------------------------ |
+| type | [SensorId](#sensorid9) | Yes | Type of the sensor to subscribe to, which is **HUMIDITY**. |
+| callback | Callback<[HumidityResponse](#humidityresponse)> | Yes | Callback used to return the humidity sensor data. The reported data type in the callback is **HumidityResponse**.|
+| options | [Options](#options) | No | Interval at which the callback is invoked to return the sensor data. The default value is 200,000,000 ns. |
+
+**Error code**
+
+For details about the following error codes, see [Error Codes of ohos.sensor](../errorcodes/errorcode-sensor.md).
+
+| Error Code ID| Error Message |
+| -------- | ------------------ |
+| 14500101 | Service exception. |
**Example**
- ```js
- sensor.on(sensor.SensorType.SENSOR_TYPE_ID_PEDOMETER,function(data){
- console.info('Steps: ' + data.steps);
- },
- {interval: 10000000}
- );
- ```
-### AMBIENT_TEMPERATURE
+```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);
+}
+```
-on(type:SensorType.SENSOR_TYPE_ID_AMBIENT_TEMPERATURE,callback:Callback<AmbientTemperatureResponse>, options?: Options): void
+### LINEAR_ACCELERATION9+
-Subscribes to data changes of the ambient temperature sensor. If this API is called multiple times for the same application, the last call takes effect.
+on(type: SensorId.LINEAR_ACCELEROMETER, callback: Callback<LinearAccelerometerResponse>,
+ options?: Options): void
+
+Subscribes to data of the linear acceleration sensor.
+
+**Required permissions**: ohos.permission.ACCELEROMETER
**System capability**: SystemCapability.Sensors.Sensor
**Parameters**
-| Name | Type | Mandatory | Description |
-| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
-| type | [SensorType](#sensortype) | Yes | Type of the sensor to subscribe to, which is **SENSOR_TYPE_ID_AMBIENT_TEMPERATURE**.|
-| callback | Callback<[AmbientTemperatureResponse](#ambienttemperatureresponse)> | Yes | Callback used to return the ambient temperature sensor data. The reported data type in the callback is **AmbientTemperatureResponse**.|
-| options | [Options](#options) | No | Interval at which the callback is invoked to return the sensor data. The default value is 200,000,000 ns. |
+
+| Name | Type | Mandatory| Description |
+| -------- | ------------------------------------------------------------ | ---- | ------------------------------------------------------------ |
+| type | [SensorId](#sensorid9) | Yes | Type of the sensor to subscribe to, which is **LINEAR_ACCELEROMETER**. |
+| callback | Callback<[LinearAccelerometerResponse](#linearaccelerometerresponse)> | Yes | Callback used to return the linear acceleration sensor data. The reported data type in the callback is **LinearAccelerometerResponse**.|
+| options | [Options](#options) | No | Interval at which the callback is invoked to return the sensor data. The default value is 200,000,000 ns. |
+
+**Error code**
+
+For details about the following error codes, see [Error Codes of ohos.sensor](../errorcodes/errorcode-sensor.md).
+
+| Error Code ID| Error Message |
+| -------- | ------------------ |
+| 14500101 | Service exception. |
**Example**
- ```js
- sensor.on(sensor.SensorType.SENSOR_TYPE_ID_AMBIENT_TEMPERATURE,function(data){
- console.info('Temperature: ' + data.temperature);
- },
- {interval: 10000000}
- );
- ```
-### MAGNETIC_FIELD
+```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+
-on(type: SensorType.SENSOR_TYPE_ID_MAGNETIC_FIELD, callback: Callback<MagneticFieldResponse>,options?: Options): void
+on(type: SensorId.MAGNETIC_FIELD, callback: Callback<MagneticFieldResponse>,options?: Options): void
-Subscribes to data changes of the magnetic field sensor. If this API is called multiple times for the same application, the last call takes effect.
+Subscribes to data of the magnetic field sensor.
**System capability**: SystemCapability.Sensors.Sensor
**Parameters**
-| Name | Type | Mandatory | Description |
-| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
-| type | [SensorType](#sensortype) | Yes | Type of the sensor to subscribe to, which is **SENSOR_TYPE_ID_MAGNETIC_FIELD**.|
-| callback | Callback<[MagneticFieldResponse](#magneticfieldresponse)> | Yes | Callback used to return the magnetic field sensor data. The reported data type in the callback is **MagneticFieldResponse**.|
-| options | [Options](#options) | No | Interval at which the callback is invoked to return the sensor data. The default value is 200,000,000 ns. |
+
+| Name | Type | Mandatory| Description |
+| -------- | ------------------------------------------------------------ | ---- | ------------------------------------------------------------ |
+| type | [SensorId](#sensorid9) | Yes | Type of the sensor to subscribe to, which is **MAGNETIC_FIELD**. |
+| callback | Callback<[MagneticFieldResponse](#magneticfieldresponse)> | Yes | Callback used to return the magnetic field sensor data. The reported data type in the callback is **MagneticFieldResponse**.|
+| options | [Options](#options) | No | Interval at which the callback is invoked to return the sensor data. The default value is 200,000,000 ns. |
+
+**Error code**
+
+For details about the following error codes, see [Error Codes of ohos.sensor](../errorcodes/errorcode-sensor.md).
+
+| Error Code ID| Error Message |
+| -------- | ------------------ |
+| 14500101 | Service exception. |
**Example**
- ```js
- sensor.on(sensor.SensorType.SENSOR_TYPE_ID_MAGNETIC_FIELD,function(data){
+
+```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
-Subscribes to data changes of the uncalibrated magnetic field sensor. If this API is called multiple times for the same application, the last call takes effect.
+Subscribes to data of the uncalibrated magnetic field sensor.
**System capability**: SystemCapability.Sensors.Sensor
**Parameters**
-| Name | Type | Mandatory | Description |
-| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
-| type | [SensorType](#sensortype) | Yes | Type of the sensor to subscribe to, which is **SENSOR_TYPE_ID_MAGNETIC_FIELD_UNCALIBRATED**.|
-| callback | Callback<[MagneticFieldUncalibratedResponse](#magneticfielduncalibratedresponse)> | Yes | Callback used to return the uncalibrated magnetic field sensor data. The reported data type in the callback is **MagneticFieldUncalibratedResponse**.|
-| options | [Options](#options) | No | Interval at which the callback is invoked to return the sensor data. The default value is 200,000,000 ns. |
+
+| Name | Type | Mandatory| Description |
+| -------- | ------------------------------------------------------------ | ---- | ------------------------------------------------------------ |
+| type | [SensorId](#sensorid9) | Yes | Type of the sensor to subscribe to, which is **MAGNETIC_FIELD_UNCALIBRATED**. |
+| callback | Callback<[MagneticFieldUncalibratedResponse](#magneticfielduncalibratedresponse)> | Yes | Callback used to return the uncalibrated magnetic field sensor data. The reported data type in the callback is **MagneticFieldUncalibratedResponse**.|
+| options | [Options](#options) | No | Interval at which the callback is invoked to return the sensor data. The default value is 200,000,000 ns. |
+
+**Error code**
+
+For details about the following error codes, see [Error Codes of ohos.sensor](../errorcodes/errorcode-sensor.md).
+
+| Error Code ID| Error Message |
+| -------- | ------------------ |
+| 14500101 | Service exception. |
**Example**
- ```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
-Subscribes to data changes of the proximity sensor. If this API is called multiple times for the same application, the last call takes effect.
+Subscribes to data of the orientation sensor.
**System capability**: SystemCapability.Sensors.Sensor
+**Error code**
+
+For details about the following error codes, see [Error Codes of ohos.sensor](../errorcodes/errorcode-sensor.md).
+
+| Error Code ID| Error Message |
+| -------- | ------------------ |
+| 14500101 | Service exception. |
+
**Parameters**
-| Name | Type | Mandatory | Description |
-| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
-| type | [SensorType](#sensortype) | Yes | Type of the sensor to subscribe to, which is **SENSOR_TYPE_ID_PROXIMITY**. |
-| callback | Callback<[ProximityResponse](#proximityresponse)> | Yes | Callback used to return the proximity sensor data. The reported data type in the callback is **ProximityResponse**.|
-| options | [Options](#options) | No | Interval at which the callback is invoked to return the sensor data. The default value is 200,000,000 ns. |
+
+| Name | Type | Mandatory| Description |
+| -------- | ----------------------------------------------------------- | ---- | ------------------------------------------------------------ |
+| type | [SensorId](#sensorid9) | Yes | Type of the sensor to subscribe to, which is **ORIENTATION**. |
+| callback | Callback<[OrientationResponse](#orientationresponse)> | Yes | Callback used to return the orientation sensor data. The reported data type in the callback is **OrientationResponse**.|
+| options | [Options](#options) | No | Interval at which the callback is invoked to return the sensor data. The default value is 200,000,000 ns. |
**Example**
- ```js
- sensor.on(sensor.SensorType.SENSOR_TYPE_ID_PROXIMITY,function(data){
- console.info('Distance: ' + data.distance);
- },
- {interval: 10000000}
- );
- ```
-### 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);
+}
+```
-Subscribes to data changes of the humidity sensor. If this API is called multiple times for the same application, the last call takes effect.
+### PEDOMETER9+
-**System capability**: SystemCapability.Sensors.Sensor
+on(type: SensorId.PEDOMETER, callback: Callback<PedometerResponse>, options?: Options): void
-**Parameters**
-| Name | Type | Mandatory | Description |
-| -------- | ---------------------------------------- | ---- | -------------------------------------- |
-| type | [SensorType](#sensortype) | Yes | Type of the sensor to subscribe to, which is **SENSOR_TYPE_ID_HUMIDITY**. |
-| callback | Callback<[HumidityResponse](#humidityresponse)> | Yes | Callback used to return the humidity sensor data. The reported data type in the callback is **HumidityResponse**.|
-| options | [Options](#options) | No | Interval at which the callback is invoked to return the sensor data. The default value is 200,000,000 ns. |
+Subscribes to data of the pedometer sensor.
-**Example**
- ```js
- sensor.on(sensor.SensorType.SENSOR_TYPE_ID_HUMIDITY,function(data){
- console.info('Humidity: ' + data.humidity);
- },
- {interval: 10000000}
- );
- ```
+**Required permissions**: ohos.permission.ACTIVITY_MOTION
-### BAROMETER
+**System capability**: SystemCapability.Sensors.Sensor
-on(type: SensorType.SENSOR_TYPE_ID_BAROMETER, callback: Callback<BarometerResponse>,options?: Options): void
+**Error code**
-Subscribes to data changes of the barometer sensor. If this API is called multiple times for the same application, the last call takes effect.
+For details about the following error codes, see [Error Codes of ohos.sensor](../errorcodes/errorcode-sensor.md).
-**System capability**: SystemCapability.Sensors.Sensor
+| Error Code ID| Error Message |
+| -------- | ------------------ |
+| 14500101 | Service exception. |
**Parameters**
-| Name | Type | Mandatory | Description |
-| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
-| type | [SensorType](#sensortype) | Yes | Type of the sensor to subscribe to, which is **SENSOR_TYPE_ID_BAROMETER**. |
-| callback | Callback<[BarometerResponse](#barometerresponse)> | Yes | Callback used to return the barometer sensor data. The reported data type in the callback is **BarometerResponse**.|
-| options | [Options](#options) | No | Interval at which the callback is invoked to return the sensor data. The default value is 200,000,000 ns. |
+
+| Name | Type | Mandatory| Description |
+| -------- | ------------------------------------------------------- | ---- | ------------------------------------------------------------ |
+| type | [SensorId](#sensorid9) | Yes | Type of the sensor to subscribe to, which is **PEDOMETER**. |
+| callback | Callback<[PedometerResponse](#pedometerresponse)> | Yes | Callback used to return the pedometer sensor data. The reported data type in the callback is **PedometerResponse**.|
+| options | [Options](#options) | No | Interval at which the callback is invoked to return the sensor data. The default value is 200,000,000 ns. |
**Example**
- ```js
- sensor.on(sensor.SensorType.SENSOR_TYPE_ID_BAROMETER,function(data){
- console.info('Atmospheric pressure: ' + data.pressure);
- },
- {interval: 10000000}
- );
- ```
-### HALL
+```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);
+}
+```
-on(type: SensorType.SENSOR_TYPE_ID_HALL, callback: Callback<HallResponse>, options?: Options): void
+### PEDOMETER_DETECTION9+
-Subscribes to data changes of the Hall effect sensor. If this API is called multiple times for the same application, the last call takes effect.
+on(type: SensorId.PEDOMETER_DETECTION, callback: Callback<PedometerDetectionResponse>,
+ options?: Options): void
-**System capability**: SystemCapability.Sensors.Sensor
+Subscribe to data of the pedometer detection sensor.
-**Parameters**
-| Name | Type | Mandatory | Description |
-| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
-| type | [SensorType](#sensortype) | Yes | Type of the sensor to subscribe to, which is **SENSOR_TYPE_ID_HALL**. |
-| callback | Callback<[HallResponse](#hallresponse)> | Yes | Callback used to return the Hall effect sensor data. The reported data type in the callback is **HallResponse**.|
-| options | [Options](#options) | No | Interval at which the callback is invoked to return the sensor data. The default value is 200,000,000 ns. |
+**Required permissions**: ohos.permission.ACTIVITY_MOTION
-**Example**
- ```js
- sensor.on(sensor.SensorType.SENSOR_TYPE_ID_HALL,function(data){
- console.info('Status: ' + data.status);
- },
- {interval: 10000000}
- );
- ```
+**System capability**: SystemCapability.Sensors.Sensor
-### AMBIENT_LIGHT
+**Parameters**
-on(type: SensorType.SENSOR_TYPE_ID_AMBIENT_LIGHT, callback: Callback<LightResponse>, options?: Options): void
+| Name | Type | Mandatory| Description |
+| -------- | ------------------------------------------------------------ | ---- | ------------------------------------------------------------ |
+| type | [SensorId](#sensorid9) | Yes | Type of the sensor to subscribe to, which is **PEDOMETER_DETECTION**. |
+| callback | Callback<[PedometerDetectionResponse](#pedometerdetectionresponse)> | Yes | Callback used to return the pedometer detection sensor data. The reported data type in the callback is **PedometerDetectionResponse**.|
+| options | [Options](#options) | No | Interval at which the callback is invoked to return the sensor data. The default value is 200,000,000 ns. |
-Subscribes to data changes of the ambient light sensor. If this API is called multiple times for the same application, the last call takes effect.
+**Error code**
-**System capability**: SystemCapability.Sensors.Sensor
+For details about the following error codes, see [Error Codes of ohos.sensor](../errorcodes/errorcode-sensor.md).
-**Parameters**
-| Name | Type | Mandatory | Description |
-| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
-| type | [SensorType](#sensortype) | Yes | Type of the sensor to subscribe to, which is **SENSOR_TYPE_ID_AMBIENT_LIGHT**.|
-| callback | Callback<[LightResponse](#lightresponse)> | Yes | Callback used to return the ambient light sensor data. The reported data type in the callback is **LightResponse**. |
-| options | [Options](#options) | No | Interval at which the callback is invoked to return the sensor data. The default value is 200,000,000 ns. |
+| Error Code ID| Error Message |
+| -------- | ------------------ |
+| 14500101 | Service exception. |
**Example**
- ```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.PEDOMETER_DETECTION,function(data){
+ console.info('Scalar data: ' + data.scalar);
+ }, {interval: 10000000} );
+} catch(err) {
+ console.info('on fail, errCode: ' + err.code + ' ,msg: ' + err.message);
+}
+```
+
+### PROXIMITY9+
-on(type: SensorType.SENSOR_TYPE_ID_ORIENTATION, callback: Callback<OrientationResponse>, options?: Options): void
+on(type: SensorId.PROXIMITY, callback: Callback<ProximityResponse>, options?: Options): void
-Subscribes to data changes of the orientation sensor. If this API is called multiple times for the same application, the last call takes effect.
+Subscribes to data of the proximity sensor.
**System capability**: SystemCapability.Sensors.Sensor
**Parameters**
-| Name | Type | Mandatory | Description |
-| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
-| type | [SensorType](#sensortype) | Yes | Type of the sensor to subscribe to, which is **SENSOR_TYPE_ID_ORIENTATION**. |
-| callback | Callback<[OrientationResponse](#orientationresponse)> | Yes | Callback used to return the orientation sensor data. The reported data type in the callback is **OrientationResponse**.|
-| options | [Options](#options) | No | Interval at which the callback is invoked to return the sensor data. The default value is 200,000,000 ns. |
-**Example**
- ```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}
- );
- ```
+| Name | Type | Mandatory| Description |
+| -------- | ------------------------------------------------------- | ---- | ------------------------------------------------------------ |
+| type | [SensorId](#sensorid9) | Yes | Type of the sensor to subscribe to, which is **PROXIMITY**. |
+| callback | Callback<[ProximityResponse](#proximityresponse)> | Yes | Callback used to return the proximity sensor data. The reported data type in the callback is **ProximityResponse**.|
+| options | [Options](#options) | No | Interval at which the callback is invoked to return the sensor data. The default value is 200,000,000 ns. |
-### HEART_RATEdeprecated
+**Error code**
-on(type: SensorType.SENSOR_TYPE_ID_HEART_RATE, callback: Callback<HeartRateResponse>, options?: Options): void
+For details about the following error codes, see [Error Codes of ohos.sensor](../errorcodes/errorcode-sensor.md).
-Subscribes to only one data change of the heart rate sensor.
+| Error Code ID| Error Message |
+| -------- | ------------------ |
+| 14500101 | Service exception. |
+
+**Example**
+
+```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);
+}
+```
-This API is deprecated since API version 9. You are advised to use **sensor.on.HEART_BEAT_RATE9+** instead.
+### ROTATION_VECTOR9+
-**Required permissions**: ohos.permission.READ_HEALTH_DATA
+on(type: SensorId.ROTATION_VECTOR, callback: Callback<RotationVectorResponse>,
+ options?: Options): void
+
+Subscribes to data of the rotation vector sensor.
**System capability**: SystemCapability.Sensors.Sensor
**Parameters**
-| Name | Type | Mandatory | Description |
-| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
-| type | [SensorType](#sensortype) | Yes | Type of the sensor to subscribe to, which is **SENSOR_TYPE_ID_HEART_RATE**. |
-| callback | Callback<[HeartRateResponse](#heartrateresponse)> | Yes | One-shot callback used to return the heart rate sensor data. The reported data type in the callback is **HeartRateResponse**.|
+| Name | Type | Mandatory| Description |
+| -------- | ------------------------------------------------------------ | ---- | ------------------------------------------------------------ |
+| type | [SensorId](#sensorid9) | Yes | Type of the sensor to subscribe to, which is **ROTATION_VECTOR**. |
+| callback | Callback<[RotationVectorResponse](#rotationvectorresponse)> | Yes | Callback used to return the rotation vector sensor data. The reported data type in the callback is **RotationVectorResponse**.|
+| options | [Options](#options) | No | Interval at which the callback is invoked to return the sensor data. The default value is 200,000,000 ns. |
+
+**Error code**
+
+For details about the following error codes, see [Error Codes of ohos.sensor](../errorcodes/errorcode-sensor.md).
+
+| Error Code ID| Error Message |
+| -------- | ------------------ |
+| 14500101 | Service exception. |
**Example**
```js
-sensor.on(sensor.SensorType.SENSOR_TYPE_ID_HEART_RATE,function(data){
- console.info("Heart rate: " + data.heartRate);
-},
- {interval: 10000000}
-);
+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);
+}
```
-### HEART_BEAT_RATE9+
-
-on(type: SensorType.SENSOR_TYPE_ID_HEART_BEAT_RATE, callback: Callback<HeartRateResponse>, options?: Options): void
+### SIGNIFICANT_MOTION9+
-Subscribes to only one data change of the heart rate sensor.
+on(type: SensorId.SIGNIFICANT_MOTION, callback: Callback<SignificantMotionResponse>,
+ options?: Options): void
-**Required permissions**: ohos.permission.READ_HEALTH_DATA
+Subscribes to data of the significant motion sensor.
**System capability**: SystemCapability.Sensors.Sensor
**Parameters**
-| Name | Type | Mandatory | Description |
-| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
-| type | [SensorType](#sensortype) | Yes | Type of the sensor to subscribe to, which is **SENSOR_TYPE_ID_HEART_BEAT_RATE**. |
-| callback | Callback<[HeartRateResponse](#heartrateresponse)> | Yes | One-shot callback used to return the heart rate sensor data. The reported data type in the callback is **HeartRateResponse**.|
+| Name | Type | Mandatory| Description |
+| -------- | ------------------------------------------------------------ | ---- | ------------------------------------------------------------ |
+| type | [SensorId](#sensorid9) | Yes | Type of the sensor to subscribe to, which is **SIGNIFICANT_MOTION**. |
+| callback | Callback<[SignificantMotionResponse](#significantmotionresponse)> | Yes | Callback used to return the significant motion sensor data. The reported data type in the callback is **SignificantMotionResponse**.|
+| options | [Options](#options) | No | Interval at which the callback is invoked to return the sensor data. The default value is 200,000,000 ns. |
+
+**Error code**
+
+For details about the following error codes, see [Error Codes of ohos.sensor](../errorcodes/errorcode-sensor.md).
+
+| Error Code ID| Error Message |
+| -------- | ------------------ |
+| 14500101 | Service exception. |
**Example**
```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.SIGNIFICANT_MOTION,function(data){
+ console.info('Scalar data: ' + data.scalar);
+ }, {interval: 10000000} );
+} catch(err) {
+ console.info('on fail, errCode: ' + err.code + ' ,msg: ' + err.message);
+}
```
-### ROTATION_VECTOR
+### WEAR_DETECTION9+
-on(type: SensorType.SENSOR_TYPE_ID_ROTATION_VECTOR,callback: Callback<RotationVectorResponse>,options?: Options): void
+on(type: SensorId.WEAR_DETECTION, callback: Callback<WearDetectionResponse>,
+ options?: Options): void
-Subscribes to data changes of the rotation vector sensor. If this API is called multiple times for the same application, the last call takes effect.
+Subscribes to data of the wear detection sensor.
**System capability**: SystemCapability.Sensors.Sensor
**Parameters**
-| Name | Type | Mandatory | Description |
-| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
-| type | [SensorType](#sensortype) | Yes | Type of the sensor to subscribe to, which is **SENSOR_TYPE_ID_ROTATION_VECTOR**.|
-| callback | Callback<[RotationVectorResponse](#rotationvectorresponse)> | Yes | Callback used to return the rotation vector sensor data. The reported data type in the callback is **RotationVectorResponse**.|
-| options | [Options](#options) | No | Interval at which the callback is invoked to return the sensor data. The default value is 200,000,000 ns. |
-
-**Example**
- ```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
+| Name | Type | Mandatory| Description |
+| -------- | ------------------------------------------------------------ | ---- | ------------------------------------------------------------ |
+| type | [SensorId](#sensorid9) | Yes | Type of the sensor to subscribe to, which is **WEAR_DETECTION**. |
+| callback | Callback<[WearDetectionResponse](#weardetectionresponse)> | Yes | Callback used to return the wear detection sensor data. The reported data type in the callback is **WearDetectionResponse**.|
+| options | [Options](#options) | No | Interval at which the callback is invoked to return the sensor data. The default value is 200,000,000 ns. |
-on(type: SensorType.SENSOR_TYPE_ID_WEAR_DETECTION, callback: Callback<WearDetectionResponse>,options?: Options): void
-
-Subscribes to data changes of the wear detection sensor. If this API is called multiple times for the same application, the last call takes effect.
+**Error code**
-**System capability**: SystemCapability.Sensors.Sensor
+For details about the following error codes, see [Error Codes of ohos.sensor](../errorcodes/errorcode-sensor.md).
-**Parameters**
-| Name | Type | Mandatory | Description |
-| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
-| type | [SensorType](#sensortype) | Yes | Type of the sensor to subscribe to, which is **SENSOR_TYPE_ID_WEAR_DETECTION**.|
-| callback | Callback<[WearDetectionResponse](#weardetectionresponse)> | Yes | Callback used to return the wear detection sensor data. The reported data type in the callback is **WearDetectionResponse**.|
-| options | [Options](#options) | No | Interval at which the callback is invoked to return the sensor data. The default value is 200,000,000 ns. |
+| Error Code ID| Error Message |
+| -------- | ------------------ |
+| 14500101 | Service exception. |
**Example**
- ```js
- sensor.on(sensor.SensorType.SENSOR_TYPE_ID_WEAR_DETECTION,function(data){
+
+```js
+try {
+ sensor.on(sensor.SensorId.WEAR_DETECTION,function(data){
console.info('Wear status: ' + data.value);
- },
- {interval: 10000000}
- );
- ```
+ }, {interval: 10000000} );
+} catch(err) {
+ console.info('on fail, errCode: ' + err.code + ' ,msg: ' + err.message);
+}
+```
-## sensor.once
+## sensor.once9+
-### ACCELEROMETER
+### ACCELEROMETER9+
-once(type: SensorType.SENSOR_TYPE_ID_ACCELEROMETER, callback: Callback<AccelerometerResponse>): void
+once(type: SensorId.ACCELEROMETER, callback: Callback<AccelerometerResponse>): void
-Subscribes to only one data change of the acceleration sensor.
+Subscribes to data of the acceleration sensor once.
-**Required permissions**: ohos.permission.ACCELEROMETER (a system permission)
+**Required permissions**: ohos.permission.ACCELEROMETER
**System capability**: SystemCapability.Sensors.Sensor
**Parameters**
-| Name | Type | Mandatory | Description |
-| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
-| type | [SensorType](#sensortype) | Yes | Type of the sensor to subscribe to, which is **SENSOR_TYPE_ID_ACCELEROMETER**. |
-| callback | Callback<[AccelerometerResponse](#accelerometerresponse)> | Yes | One-shot callback used to return the acceleration sensor data. The reported data type in the callback is **AccelerometerResponse**.|
-
-**Example**
- ```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_ACCELERATIONdeprecated
-
-once(type: SensorType.SENSOR_TYPE_ID_LINEAR_ACCELERATION,callback:Callback<LinearAccelerometerResponse>): void
-
-Subscribes to only one data change of the linear acceleration sensor.
-This API is deprecated since API version 9. You are advised to use **sensor.once.LINEAR_ACCELEROMETER9+** instead.
+| Name | Type | Mandatory| Description |
+| -------- | ------------------------------------------------------------ | ---- | ------------------------------------------------------------ |
+| type | [SensorId](#sensorid9) | Yes | Type of the sensor to subscribe to, which is **ACCELEROMETER**. |
+| callback | Callback<[AccelerometerResponse](#accelerometerresponse)> | Yes | One-shot callback used to return the acceleration sensor data. The reported data type in the callback is **AccelerometerResponse**.|
-**Required permissions**: ohos.permission.ACCELEROMETER (a system permission)
+**Error code**
-**System capability**: SystemCapability.Sensors.Sensor
+For details about the following error codes, see [Error Codes of ohos.sensor](../errorcodes/errorcode-sensor.md).
-**Parameters**
-| Name | Type | Mandatory | Description |
-| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
-| type | [SensorType](#sensortype) | Yes | Type of the sensor to subscribe to, which is **SENSOR_TYPE_ID_LINEAR_ACCELERATION**.|
-| callback | Callback<[LinearAccelerometerResponse](#linearaccelerometerresponse)> | Yes | One-shot callback used to return the linear acceleration sensor data. The reported data type in the callback is **LinearAccelerometerResponse**.|
+| Error Code ID| Error Message |
+| -------- | ------------------ |
+| 14500101 | Service exception. |
**Example**
- ```js
- sensor.once(sensor.SensorType.SENSOR_TYPE_ID_LINEAR_ACCELERATION, 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);
}
);
- ```
+} catch(err) {
+ console.info('once fail, errCode: ' + err.code + ' ,msg: ' + err.message);
+}
+```
-### LINEAR_ACCELEROMETER9+
+### ACCELEROMETER_UNCALIBRATED9+
-once(type: SensorType.SENSOR_TYPE_ID_LINEAR_ACCELEROMETER,callback:Callback<LinearAccelerometerResponse>): void
+once(type: SensorId.ACCELEROMETER_UNCALIBRATED, callback: Callback<AccelerometerUncalibratedResponse>): void
-Subscribes to only one data change of the linear acceleration sensor.
+Subscribes to data of the uncalibrated acceleration sensor once.
-**Required permissions**: ohos.permission.ACCELEROMETER (a system permission)
+**Required permissions**: ohos.permission.ACCELEROMETER
**System capability**: SystemCapability.Sensors.Sensor
**Parameters**
-| Name | Type | Mandatory | Description |
-| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
-| type | [SensorType](#sensortype) | Yes | Type of the sensor to subscribe to, which is **SENSOR_TYPE_ID_LINEAR_ACCELEROMETER**.|
-| callback | Callback<[LinearAccelerometerResponse](#linearaccelerometerresponse)> | Yes | One-shot callback used to return the linear acceleration sensor data. The reported data type in the callback is **LinearAccelerometerResponse**.|
-
-**Example**
- ```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
-
-once(type: SensorType.SENSOR_TYPE_ID_ACCELEROMETER_UNCALIBRATED,callback: Callback<AccelerometerUncalibratedResponse>): void
-
-Subscribes to only one data change of the uncalibrated acceleration sensor.
+| Name | Type | Mandatory| Description |
+| -------- | ------------------------------------------------------------ | ---- | ------------------------------------------------------------ |
+| type | [SensorId](#sensorid9) | Yes | Type of the sensor to subscribe to, which is **ACCELEROMETER_UNCALIBRATED**. |
+| callback | Callback<[AccelerometerUncalibratedResponse](#accelerometeruncalibratedresponse)> | Yes | One-shot callback used to return the uncalibrated acceleration sensor data. The reported data type in the callback is **AccelerometerUncalibratedResponse**.|
-**Required permissions**: ohos.permission.ACCELEROMETER (a system permission)
+**Error code**
-**System capability**: SystemCapability.Sensors.Sensor
+For details about the following error codes, see [Error Codes of ohos.sensor](../errorcodes/errorcode-sensor.md).
-**Parameters**
-| Name | Type | Mandatory | Description |
-| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
-| type | [SensorType](#sensortype) | Yes | Type of the sensor to subscribe to, which is **SENSOR_TYPE_ID_ACCELEROMETER_UNCALIBRATED**.|
-| callback | Callback<[AccelerometerUncalibratedResponse](#accelerometeruncalibratedresponse)> | Yes | One-shot callback used to return the uncalibrated acceleration sensor data. The reported data type in the callback is **AccelerometerUncalibratedResponse**.|
+| Error Code ID| Error Message |
+| -------- | ------------------ |
+| 14500101 | Service exception. |
**Example**
- ```
- sensor.once(sensor.SensorType.SENSOR_TYPE_ID_ACCELEROMETER_UNCALIBRATED, function(data) {
+
+```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);
@@ -744,1649 +912,2107 @@ Subscribes to only one data change of the uncalibrated acceleration sensor.
console.info('Z-coordinate bias: ' + data.biasZ);
}
);
- ```
+} catch(err) {
+ console.info('once fail, errCode: ' + err.code + ' ,msg: ' + err.message);
+}
+```
-### GRAVITY
+### AMBIENT_LIGHT9+
-once(type: SensorType.SENSOR_TYPE_ID_GRAVITY, callback: Callback<GravityResponse>): void
+once(type: SensorId.AMBIENT_LIGHT, callback: Callback<LightResponse>): void
-Subscribes to only one data change of the gravity sensor.
+Subscribes to data of the ambient light sensor once.
**System capability**: SystemCapability.Sensors.Sensor
**Parameters**
-| Name | Type | Mandatory | Description |
-| -------- | ---------------------------------------- | ---- | --------------------------------------- |
-| type | [SensorType](#sensortype) | Yes | Type of the sensor to subscribe to, which is **SENSOR_TYPE_ID_GRAVITY**. |
-| callback | Callback<[GravityResponse](#gravityresponse)> | Yes | One-shot callback used to return the gravity sensor data. The reported data type in the callback is **GravityResponse**.|
+
+| Name | Type | Mandatory| Description |
+| -------- | ----------------------------------------------- | ---- | ------------------------------------------------------------ |
+| type | [SensorId](#sensorid9) | Yes | Type of the sensor to subscribe to, which is **AMBIENT_LIGHT**. |
+| callback | Callback<[LightResponse](#lightresponse)> | Yes | One-shot callback used to return the ambient light sensor data. The reported data type in the callback is **LightResponse**.|
+
+**Error code**
+
+For details about the following error codes, see [Error Codes of ohos.sensor](../errorcodes/errorcode-sensor.md).
+
+| Error Code ID| Error Message |
+| -------- | ------------------ |
+| 14500101 | Service exception. |
**Example**
- ```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
+```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);
+}
+```
-once(type: SensorType.SENSOR_TYPE_ID_GYROSCOPE, callback: Callback<GyroscopeResponse>): void
+### AMBIENT_TEMPERATURE9+
-Subscribes to only one data change of the gyroscope sensor.
+once(type: SensorId.AMBIENT_TEMPERATURE, callback: Callback<AmbientTemperatureResponse>): void
-**Required permissions**: ohos.permission.GYROSCOPE (a system permission)
+Subscribes to data of the ambient temperature sensor once.
**System capability**: SystemCapability.Sensors.Sensor
**Parameters**
-| Name | Type | Mandatory | Description |
-| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
-| type | [SensorType](#sensortype) | Yes | Type of the sensor to subscribe to, which is **SENSOR_TYPE_ID_GYROSCOPE**. |
-| callback | Callback<[GyroscopeResponse](#gyroscoperesponse)> | Yes | One-shot callback used to return the gyroscope sensor data. The reported data type in the callback is **GyroscopeResponse**.|
+
+| Name | Type | Mandatory| Description |
+| -------- | ------------------------------------------------------------ | ---- | ------------------------------------------------------------ |
+| type | [SensorId](#sensorid9) | Yes | Type of the sensor to subscribe to, which is **AMBIENT_TEMPERATURE**. |
+| callback | Callback<[AmbientTemperatureResponse](#ambienttemperatureresponse)> | Yes | One-shot callback used to return the ambient temperature sensor data. The reported data type in the callback is **AmbientTemperatureResponse**.|
+
+**Error code**
+
+For details about the following error codes, see [Error Codes of ohos.sensor](../errorcodes/errorcode-sensor.md).
+
+| Error Code ID| Error Message |
+| -------- | ------------------ |
+| 14500101 | Service exception. |
**Example**
- ```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
+```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);
+}
+```
-once(type: SensorType.SENSOR_TYPE_ID_GYROSCOPE_UNCALIBRATED,callback: Callback<GyroscopeUncalibratedResponse>): void
+### BAROMETER9+
-Subscribes to only one data change of the uncalibrated gyroscope sensor.
+once(type: SensorId.BAROMETER, callback: Callback<BarometerResponse>): void
-**Required permissions**: ohos.permission.GYROSCOPE (a system permission)
+Subscribes to data of the barometer sensor once.
**System capability**: SystemCapability.Sensors.Sensor
**Parameters**
-| Name | Type | Mandatory | Description |
-| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
-| type | [SensorType](#sensortype) | Yes | Type of the sensor to subscribe to, which is **SENSOR_TYPE_ID_GYROSCOPE_UNCALIBRATED**.|
-| callback | Callback<[GyroscopeUncalibratedResponse](#gyroscopeuncalibratedresponse)> | Yes | One-shot callback used to return the uncalibrated gyroscope sensor data. The reported data type in the callback is **GyroscopeUncalibratedResponse**.|
-**Example**
- ```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);
- }
- );
- ```
+| Name | Type | Mandatory| Description |
+| -------- | ------------------------------------------------------- | ---- | ------------------------------------------------------------ |
+| type | [SensorId](#sensorid9) | Yes | Type of the sensor to subscribe to, which is **BAROMETER**. |
+| callback | Callback<[BarometerResponse](#barometerresponse)> | Yes | One-shot callback used to return the barometer sensor data. The reported data type in the callback is **BarometerResponse**.|
-### SIGNIFICANT_MOTION
+**Error code**
-once(type: SensorType.SENSOR_TYPE_ID_SIGNIFICANT_MOTION,callback: Callback<SignificantMotionResponse>): void
+For details about the following error codes, see [Error Codes of ohos.sensor](../errorcodes/errorcode-sensor.md).
-Subscribes to only one data change of the significant motion sensor.
+| Error Code ID| Error Message |
+| -------- | ------------------ |
+| 14500101 | Service exception. |
-**System capability**: SystemCapability.Sensors.Sensor
+**Example**
-**Parameters**
-| Name | Type | Mandatory | Description |
-| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
-| type | [SensorType](#sensortype) | Yes | Type of the sensor to subscribe to, which is **SENSOR_TYPE_ID_SIGNIFICANT_MOTION**.|
-| callback | Callback<[SignificantMotionResponse](#significantmotionresponse)> | Yes | One-shot callback used to return the significant motion sensor data. The reported data type in the callback is **SignificantMotionResponse**.|
-
-**Example**
- ```js
- sensor.once(sensor.SensorType.SENSOR_TYPE_ID_SIGNIFICANT_MOTION, function(data) {
- console.info('Scalar data: ' + data.scalar);
- }
- );
- ```
-
-### PEDOMETER_DETECTION
+```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_PEDOMETER_DETECTION,callback: Callback<PedometerDetectionResponse>): void
+### GRAVITY9+
-Subscribes to only one data change of the pedometer detection sensor.
+once(type: SensorId.GRAVITY, callback: Callback<GravityResponse>): void
-**Required permissions**: ohos.permission.ACTIVITY_MOTION
+Subscribes to data of the gravity sensor once.
**System capability**: SystemCapability.Sensors.Sensor
**Parameters**
-| Name | Type | Mandatory | Description |
-| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
-| type | [SensorType](#sensortype) | Yes | Type of the sensor to subscribe to, which is **SENSOR_TYPE_ID_PEDOMETER_DETECTION**.|
-| callback | Callback<[PedometerDetectionResponse](#pedometerdetectionresponse)> | Yes | One-shot callback used to return the pedometer detection sensor data. The reported data type in the callback is **PedometerDetectionResponse**.|
-**Example**
- ```js
- sensor.once(sensor.SensorType.SENSOR_TYPE_ID_PEDOMETER_DETECTION, function(data) {
- console.info('Scalar data: ' + data.scalar);
- }
- );
- ```
-
-### PEDOMETER
+| Name | Type | Mandatory| Description |
+| -------- | --------------------------------------------------- | ---- | ------------------------------------------------------------ |
+| type | [SensorId](#sensorid9) | Yes | Type of the sensor to subscribe to, which is **GRAVITY**. |
+| callback | Callback<[GravityResponse](#gravityresponse)> | Yes | One-shot callback used to return the gravity sensor data. The reported data type in the callback is **GravityResponse**.|
-once(type: SensorType.SENSOR_TYPE_ID_PEDOMETER, callback: Callback<PedometerResponse>): void
+**Error code**
-Subscribes to only one data change of the pedometer sensor.
+For details about the following error codes, see [Error Codes of ohos.sensor](../errorcodes/errorcode-sensor.md).
-**Required permissions**: ohos.permission.ACTIVITY_MOTION
+| Error Code ID| Error Message |
+| -------- | ------------------ |
+| 14500101 | Service exception. |
-**System capability**: SystemCapability.Sensors.Sensor
+**Example**
-**Parameters**
-| Name | Type | Mandatory | Description |
-| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
-| type | [SensorType](#sensortype) | Yes | Type of the sensor to subscribe to, which is **SENSOR_TYPE_ID_PEDOMETER**. |
-| callback | Callback<[PedometerResponse](#pedometerresponse)> | Yes | One-shot callback used to return the pedometer sensor data. The reported data type in the callback is **PedometerResponse**.|
+```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);
+}
+```
-**Example**
- ```js
- sensor.once(sensor.SensorType.SENSOR_TYPE_ID_PEDOMETER, function(data) {
- console.info('Steps: ' + data.steps);
- }
- );
- ```
+### GYROSCOPE9+
-### AMBIENT_TEMPERATURE
+once(type: SensorId.GYROSCOPE, callback: Callback<GyroscopeResponse>): void
-once(type: SensorType.SENSOR_TYPE_ID_AMBIENT_TEMPERATURE,callback: Callback<AmbientTemperatureResponse>): void
+Subscribes to data of the gyroscope sensor once.
-Subscribes to only one data change of the ambient temperature sensor.
+**Required permissions**: ohos.permission.GYROSCOPE
**System capability**: SystemCapability.Sensors.Sensor
**Parameters**
-| Name | Type | Mandatory | Description |
-| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
-| type | [SensorType](#sensortype) | Yes | Type of the sensor to subscribe to, which is **SENSOR_TYPE_ID_AMBIENT_TEMPERATURE**.|
-| callback | Callback<[AmbientTemperatureResponse](#ambienttemperatureresponse)> | Yes | One-shot callback used to return the ambient temperature sensor data. The reported data type in the callback is **AmbientTemperatureResponse**.|
-**Example**
- ```js
- sensor.once(sensor.SensorType.SENSOR_TYPE_ID_AMBIENT_TEMPERATURE, function(data) {
- console.info('Temperature: ' + data.temperature);
- }
- );
- ```
+| Name | Type | Mandatory| Description |
+| -------- | ------------------------------------------------------- | ---- | ------------------------------------------------------------ |
+| type | [SensorId](#sensorid9) | Yes | Type of the sensor to subscribe to, which is **GYROSCOPE**. |
+| callback | Callback<[GyroscopeResponse](#gyroscoperesponse)> | Yes | One-shot callback used to return the gyroscope sensor data. The reported data type in the callback is **GyroscopeResponse**.|
-### MAGNETIC_FIELD
+**Error code**
-once(type: SensorType.SENSOR_TYPE_ID_MAGNETIC_FIELD, callback: Callback<MagneticFieldResponse>): void
+For details about the following error codes, see [Error Codes of ohos.sensor](../errorcodes/errorcode-sensor.md).
-Subscribes to only one data change of the magnetic field sensor.
+| Error Code ID| Error Message |
+| -------- | ------------------ |
+| 14500101 | Service exception. |
-**System capability**: SystemCapability.Sensors.Sensor
+**Example**
-**Parameters**
-| Name | Type | Mandatory | Description |
-| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
-| type | [SensorType](#sensortype) | Yes | Type of the sensor to subscribe to, which is **SENSOR_TYPE_ID_MAGNETIC_FIELD**. |
-| callback | Callback<[MagneticFieldResponse](#magneticfieldresponse)> | Yes | One-shot callback used to return the magnetic field sensor data. The reported data type in the callback is **MagneticFieldResponse**.|
+```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);
+}
+```
-**Example**
- ```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);
- }
- );
- ```
+### GYROSCOPE_UNCALIBRATED9+
-### MAGNETIC_FIELD_UNCALIBRATED
+once(type: SensorId.GYROSCOPE_UNCALIBRATED, callback: Callback<GyroscopeUncalibratedResponse>): void
-once(type: SensorType.SENSOR_TYPE_ID_MAGNETIC_FIELD_UNCALIBRATED,callback: Callback<MagneticFieldUncalibratedResponse>): void
+Subscribes to data of the uncalibrated gyroscope sensor once.
-Subscribes to only one data change of the uncalibrated magnetic field sensor.
+**Required permissions**: ohos.permission.GYROSCOPE
**System capability**: SystemCapability.Sensors.Sensor
**Parameters**
-| Name | Type | Mandatory | Description |
-| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
-| type | [SensorType](#sensortype) | Yes | Type of the sensor to subscribe to, which is **SENSOR_TYPE_ID_MAGNETIC_FIELD_UNCALIBRATED**.|
-| callback | Callback<[MagneticFieldUncalibratedResponse](#magneticfielduncalibratedresponse)> | Yes | One-shot callback used to return the uncalibrated magnetic field sensor data. The reported data type in the callback is **MagneticFieldUncalibratedResponse**.|
-
-**Example**
- ```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
-once(type: SensorType.SENSOR_TYPE_ID_PROXIMITY, callback: Callback<ProximityResponse>): void
+| Name | Type | Mandatory| Description |
+| -------- | ------------------------------------------------------------ | ---- | ------------------------------------------------------------ |
+| type | [SensorId](#sensorid9) | Yes | Type of the sensor to subscribe to, which is **GYROSCOPE_UNCALIBRATED**. |
+| callback | Callback<[GyroscopeUncalibratedResponse](#gyroscopeuncalibratedresponse)> | Yes | One-shot callback used to return the uncalibrated gyroscope sensor data. The reported data type in the callback is **GyroscopeUncalibratedResponse**.|
-Subscribes to only one data change of the proximity sensor.
+**Error code**
-**System capability**: SystemCapability.Sensors.Sensor
+For details about the following error codes, see [Error Codes of ohos.sensor](../errorcodes/errorcode-sensor.md).
-**Parameters**
-| Name | Type | Mandatory | Description |
-| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
-| type | [SensorType](#sensortype) | Yes | Type of the sensor to subscribe to, which is **SENSOR_TYPE_ID_PROXIMITY**. |
-| callback | Callback<[ProximityResponse](#proximityresponse)> | Yes | One-shot callback used to return the proximity sensor data. The reported data type in the callback is **ProximityResponse**.|
+| Error Code ID| Error Message |
+| -------- | ------------------ |
+| 14500101 | Service exception. |
**Example**
- ```js
- sensor.once(sensor.SensorType.SENSOR_TYPE_ID_PROXIMITY, function(data) {
- console.info('Distance: ' + data.distance);
- }
- );
- ```
-### HUMIDITY
+```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+
-once(type: SensorType.SENSOR_TYPE_ID_HUMIDITY, callback: Callback<HumidityResponse>): void
+once(type: SensorId.HALL, callback: Callback<HallResponse>): void
-Subscribes to only one data change of the humidity sensor.
+Subscribes to data of the Hall effect sensor once.
**System capability**: SystemCapability.Sensors.Sensor
**Parameters**
-| Name | Type | Mandatory | Description |
-| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
-| type | [SensorType](#sensortype) | Yes | Type of the sensor to subscribe to, which is **SENSOR_TYPE_ID_HUMIDITY**. |
-| callback | Callback<[HumidityResponse](#humidityresponse)> | Yes | One-shot callback used to return the humidity sensor data. The reported data type in the callback is **HumidityResponse**.|
-**Example**
- ```js
- sensor.once(sensor.SensorType.SENSOR_TYPE_ID_HUMIDITY, function(data) {
- console.info('Humidity: ' + data.humidity);
- }
- );
- ```
+| Name | Type | Mandatory| Description |
+| -------- | --------------------------------------------- | ---- | ------------------------------------------------------------ |
+| type | [SensorId](#sensorid9) | Yes | Type of the sensor to subscribe to, which is **HALL**. |
+| callback | Callback<[HallResponse](#hallresponse)> | Yes | One-shot callback used to return the Hall effect sensor data. The reported data type in the callback is **HallResponse**.|
-### BAROMETER
+**Error code**
-once(type: SensorType.SENSOR_TYPE_ID_BAROMETER, callback: Callback<BarometerResponse>): void
+For details about the following error codes, see [Error Codes of ohos.sensor](../errorcodes/errorcode-sensor.md).
-Subscribes to only one data change of the barometer sensor.
+| Error Code ID| Error Message |
+| -------- | ------------------ |
+| 14500101 | Service exception. |
-**System capability**: SystemCapability.Sensors.Sensor
+**Example**
-**Parameters**
-| Name | Type | Mandatory | Description |
-| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
-| type | [SensorType](#sensortype) | Yes | Type of the sensor to subscribe to, which is **SENSOR_TYPE_ID_BAROMETER**. |
-| callback | Callback<[BarometerResponse](#barometerresponse)> | Yes | One-shot callback used to return the barometer sensor data. The reported data type in the callback is **BarometerResponse**.|
+```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);
+}
+```
-**Example**
- ```js
- sensor.once(sensor.SensorType.SENSOR_TYPE_ID_BAROMETER, function(data) {
- console.info('Atmospheric pressure: ' + data.pressure);
- }
- );
- ```
+### HEART_RATE9+
-### HALL
+once(type: SensorId.HEART_RATE, callback: Callback<HeartRateResponse>): void
-once(type: SensorType.SENSOR_TYPE_ID_HALL, callback: Callback<HallResponse>): void
+Subscribes to data of the heart rate sensor once.
-Subscribes to only one data change of the Hall effect sensor.
+**Required permissions**: ohos.permission.READ_HEALTH_DATA
**System capability**: SystemCapability.Sensors.Sensor
**Parameters**
-| Name | Type | Mandatory | Description |
-| -------- | ---------------------------------------- | ---- | ------------------------------------ |
-| type | [SensorType](#sensortype) | Yes | Type of the sensor to subscribe to, which is **SENSOR_TYPE_ID_HALL**. |
-| callback | Callback<[HallResponse](#hallresponse)> | Yes | One-shot callback used to return the Hall effect sensor data. The reported data type in the callback is **HallResponse**.|
-
-**Example**
- ```js
- sensor.once(sensor.SensorType.SENSOR_TYPE_ID_HALL, function(data) {
- console.info('Status: ' + data.status);
- }
- );
- ```
-
-### AMBIENT_LIGHT
-once(type: SensorType.SENSOR_TYPE_ID_AMBIENT_LIGHT, callback: Callback<LightResponse>): void
+| Name | Type | Mandatory| Description |
+| -------- | ------------------------------------------------------- | ---- | ------------------------------------------------------------ |
+| type | [SensorId](#sensorid9) | Yes | Type of the sensor to subscribe to, which is **HEART_RATE**. |
+| callback | Callback<[HeartRateResponse](#heartrateresponse)> | Yes | One-shot callback used to return the heart rate sensor data. The reported data type in the callback is **HeartRateResponse**.|
-Subscribes to only one data change of the ambient light sensor.
+**Error code**
-**System capability**: SystemCapability.Sensors.Sensor
+For details about the following error codes, see [Error Codes of ohos.sensor](../errorcodes/errorcode-sensor.md).
-**Parameters**
-| Name | Type | Mandatory | Description |
-| -------- | ---------------------------------------- | ---- | -------------------------------------- |
-| type | [SensorType](#sensortype) | Yes | Type of the sensor to subscribe to, which is **SENSOR_TYPE_ID_AMBIENT_LIGHT**.|
-| callback | Callback<[LightResponse](#lightresponse)> | Yes | One-shot callback used to return the ambient light sensor data. The reported data type in the callback is **LightResponse**.|
+| Error Code ID| Error Message |
+| -------- | ------------------ |
+| 14500101 | Service exception. |
**Example**
- ```js
- sensor.once(sensor.SensorType.SENSOR_TYPE_ID_AMBIENT_LIGHT, function(data) {
- console.info(' Illumination: ' + data.intensity);
- }
- );
- ```
-### ORIENTATION
+```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);
+}
+```
-once(type: SensorType.SENSOR_TYPE_ID_ORIENTATION, callback: Callback<OrientationResponse>): void
+### HUMIDITY9+
-Subscribes to only one data change of the orientation sensor.
+once(type: SensorId.HUMIDITY, callback: Callback<HumidityResponse>): void
+
+Subscribes to data of the humidity sensor once.
**System capability**: SystemCapability.Sensors.Sensor
**Parameters**
-| Name | Type | Mandatory | Description |
-| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
-| type | [SensorType](#sensortype) | Yes | Type of the sensor to subscribe to, which is **SENSOR_TYPE_ID_ORIENTATION**. |
-| callback | Callback<[OrientationResponse](#orientationresponse)> | Yes | One-shot callback used to return the orientation sensor data. The reported data type in the callback is **OrientationResponse**.|
-
-**Example**
- ```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
-once(type: SensorType.SENSOR_TYPE_ID_ROTATION_VECTOR, callback: Callback<RotationVectorResponse>): void
+| Name | Type | Mandatory| Description |
+| -------- | ----------------------------------------------------- | ---- | ------------------------------------------------------------ |
+| type | [SensorId](#sensorid9) | Yes | Type of the sensor to subscribe to, which is **HUMIDITY**. |
+| callback | Callback<[HumidityResponse](#humidityresponse)> | Yes | One-shot callback used to return the humidity sensor data. The reported data type in the callback is **HumidityResponse**.|
-Subscribes to only one data change of the rotation vector sensor.
+**Error code**
-**System capability**: SystemCapability.Sensors.Sensor
+For details about the following error codes, see [Error Codes of ohos.sensor](../errorcodes/errorcode-sensor.md).
-**Parameters**
-| Name | Type | Mandatory | Description |
-| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
-| type | [SensorType](#sensortype) | Yes | Type of the sensor to subscribe to, which is **SENSOR_TYPE_ID_ROTATION_VECTOR**.|
-| callback | Callback<[RotationVectorResponse](#rotationvectorresponse)> | Yes | One-shot callback used to return the rotation vector sensor data. The reported data type in the callback is **RotationVectorResponse**.|
+| Error Code ID| Error Message |
+| -------- | ------------------ |
+| 14500101 | Service exception. |
**Example**
- ```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_RATEdeprecated
+```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);
+}
+```
-once(type: SensorType.SENSOR_TYPE_ID_HEART_RATE, callback: Callback<HeartRateResponse>): void
+### LINEAR_ACCELERATION9+
-Subscribes to only one data change of the heart rate sensor.
+once(type: SensorId.LINEAR_ACCELEROMETER, callback: Callback<LinearAccelerometerResponse>): void
-This API is deprecated since API version 9. You are advised to use **sensor.once.HEART_BEAT_RATE9+** instead.
+Subscribes to data of the linear acceleration sensor once.
-**Required permissions**: ohos.permission.READ_HEALTH_DATA
+**Required permissions**: ohos.permission.ACCELEROMETER
**System capability**: SystemCapability.Sensors.Sensor
**Parameters**
-| Name | Type | Mandatory | Description |
-| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
-| type | [SensorType](#sensortype) | Yes | Type of the sensor to subscribe to, which is **SENSOR_TYPE_ID_HEART_RATE**. |
-| callback | Callback<[HeartRateResponse](#heartrateresponse)> | Yes | One-shot callback used to return the heart rate sensor data. The reported data type in the callback is **HeartRateResponse**.|
+
+| Name | Type | Mandatory| Description |
+| -------- | ------------------------------------------------------------ | ---- | ------------------------------------------------------------ |
+| type | [SensorId](#sensorid9) | Yes | Type of the sensor to subscribe to, which is **LINEAR_ACCELEROMETER**. |
+| callback | Callback<[LinearAccelerometerResponse](#linearaccelerometerresponse)> | Yes | One-shot callback used to return the linear acceleration sensor data. The reported data type in the callback is **LinearAccelerometerResponse**.|
+
+**Error code**
+
+For details about the following error codes, see [Error Codes of ohos.sensor](../errorcodes/errorcode-sensor.md).
+
+| Error Code ID| Error Message |
+| -------- | ------------------ |
+| 14500101 | Service exception. |
**Example**
- ```js
- sensor.once(sensor.SensorType.SENSOR_TYPE_ID_HEART_RATE, function(data) {
- console.info("Heart rate: " + data.heartRate);
- }
- );
- ```
-### HEART_BEAT_RATE9+
+```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);
+}
+```
-once(type: SensorType.SENSOR_TYPE_ID_HEART_BEAT_RATE, callback: Callback<HeartRateResponse>): void
+### MAGNETIC_FIELD9+
-Subscribes to only one data change of the heart rate sensor.
+once(type: SensorId.MAGNETIC_FIELD, callback: Callback<MagneticFieldResponse>): void
-**Required permissions**: ohos.permission.READ_HEALTH_DATA
+Subscribes to data of the magnetic field sensor once.
**System capability**: SystemCapability.Sensors.Sensor
**Parameters**
-| Name | Type | Mandatory | Description |
-| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
-| type | [SensorType](#sensortype) | Yes | Type of the sensor to subscribe to, which is **SENSOR_TYPE_ID_HEART_BEAT_RATE**. |
-| callback | Callback<[HeartRateResponse](#heartrateresponse)> | Yes | One-shot callback used to return the heart rate sensor data. The reported data type in the callback is **HeartRateResponse**.|
-
-**Example**
- ```js
- sensor.once(sensor.SensorType.SENSOR_TYPE_ID_HEART_BEAT_RATE, function(data) {
- console.info("Heart rate: " + data.heartRate);
- }
- );
- ```
-### WEAR_DETECTION
+| Name | Type | Mandatory| Description |
+| -------- | ------------------------------------------------------------ | ---- | ------------------------------------------------------------ |
+| type | [SensorId](#sensorid9) | Yes | Type of the sensor to subscribe to, which is **MAGNETIC_FIELD**. |
+| callback | Callback<[MagneticFieldResponse](#magneticfieldresponse)> | Yes | One-shot callback used to return the magnetic field sensor data. The reported data type in the callback is **MagneticFieldResponse**.|
-once(type: SensorType.SENSOR_TYPE_ID_WEAR_DETECTION, callback: Callback<WearDetectionResponse>): void
-
-Subscribes to only one data change of the wear detection sensor.
+**Error code**
-**System capability**: SystemCapability.Sensors.Sensor
+For details about the following error codes, see [Error Codes of ohos.sensor](../errorcodes/errorcode-sensor.md).
-**Parameters**
-| Name | Type | Mandatory | Description |
-| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
-| type | [SensorType](#sensortype) | Yes | Type of the sensor to subscribe to, which is **SENSOR_TYPE_ID_WEAR_DETECTION**.|
-| callback | Callback<[WearDetectionResponse](#weardetectionresponse)> | Yes | One-shot callback used to return the wear detection sensor data. The reported data type in the callback is **WearDetectionResponse**.|
+| Error Code ID| Error Message |
+| -------- | ------------------ |
+| 14500101 | Service exception. |
**Example**
- ```js
- sensor.once(sensor.SensorType.SENSOR_TYPE_ID_WEAR_DETECTION, function(data) {
- console.info("Wear status: "+ data.value);
- }
- );
- ```
-
-## sensor.off
-### ACCELEROMETER
+```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);
+}
+```
-off(type: SensorType.SENSOR_TYPE_ID_ACCELEROMETER, callback?: Callback<AccelerometerResponse>): void
+### MAGNETIC_FIELD_UNCALIBRATED9+
-Unsubscribes from sensor data changes.
+once(type: SensorId.MAGNETIC_FIELD_UNCALIBRATED, callback: Callback<MagneticFieldUncalibratedResponse>): void
-**Required permissions**: ohos.permission.ACCELEROMETER (a system permission)
+Subscribes to data of the uncalibrated magnetic field sensor once.
**System capability**: SystemCapability.Sensors.Sensor
**Parameters**
-| Name | Type | Mandatory | Description |
-| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
-| type | [SensorType](#sensortype) | Yes | Type of the sensor to unsubscribe from, which is **SENSOR_TYPE_ID_ACCELEROMETER**.|
-| callback | Callback<[AccelerometerResponse](#accelerometerresponse)> | Yes | Callback used to return the acceleration sensor data. The reported data type in the callback is **AccelerometerResponse**.|
+| Name | Type | Mandatory| Description |
+| -------- | ------------------------------------------------------------ | ---- | ------------------------------------------------------------ |
+| type | [SensorId](#sensorid9) | Yes | Type of the sensor to subscribe to, which is **MAGNETIC_FIELD_UNCALIBRATED**. |
+| callback | Callback<[MagneticFieldUncalibratedResponse](#magneticfielduncalibratedresponse)> | Yes | One-shot callback used to return the uncalibrated magnetic field sensor data. The reported data type in the callback is **MagneticFieldUncalibratedResponse**.|
+
+**Error code**
+
+For details about the following error codes, see [Error Codes of ohos.sensor](../errorcodes/errorcode-sensor.md).
+
+| Error Code ID| Error Message |
+| -------- | ------------------ |
+| 14500101 | Service exception. |
**Example**
```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 {
+ 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);
}
-sensor.off(sensor.SensorType.SENSOR_TYPE_ID_ACCELEROMETER, callback);
```
-### ACCELEROMETER_UNCALIBRATED
-
-off(type: SensorType.SENSOR_TYPE_ID_ACCELEROMETER_UNCALIBRATED, callback?: Callback<AccelerometerUncalibratedResponse>): void
+### ORIENTATION9+
-Unsubscribes from sensor data changes.
+once(type: SensorId.ORIENTATION, callback: Callback<OrientationResponse>): void
-**Required permissions**: ohos.permission.ACCELEROMETER (a system permission)
+Subscribes to data of the orientation sensor once.
**System capability**: SystemCapability.Sensors.Sensor
**Parameters**
-| Name | Type | Mandatory | Description |
-| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
-| type | [SensorType](#sensortype) | Yes | Type of the sensor to unsubscribe from, which is **SENSOR_TYPE_ID_ACCELEROMETER_UNCALIBRATED**.|
-| callback | Callback<[AccelerometerUncalibratedResponse](#accelerometeruncalibratedresponse)> | Yes | Callback used to return the uncalibrated acceleration sensor data. The reported data type in the callback is **AccelerometerUncalibratedResponse**.|
+| Name | Type | Mandatory| Description |
+| -------- | ----------------------------------------------------------- | ---- | ------------------------------------------------------------ |
+| type | [SensorId](#sensorid9) | Yes | Type of the sensor to subscribe to, which is **ORIENTATION**. |
+| callback | Callback<[OrientationResponse](#orientationresponse)> | Yes | One-shot callback used to return the orientation sensor data. The reported data type in the callback is **OrientationResponse**.|
+
+**Error code**
+
+For details about the following error codes, see [Error Codes of ohos.sensor](../errorcodes/errorcode-sensor.md).
+
+| Error Code ID| Error Message |
+| -------- | ------------------ |
+| 14500101 | Service exception. |
**Example**
```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 {
+ 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);
}
-sensor.off(sensor.SensorType.SENSOR_TYPE_ID_ACCELEROMETER_UNCALIBRATED, callback);
```
-### AMBIENT_LIGHT
+### PEDOMETER9+
-off(type: SensorType.SENSOR_TYPE_ID_AMBIENT_LIGHT, callback?: Callback<LightResponse>): void
+once(type: SensorId.PEDOMETER, callback: Callback<PedometerResponse>): void
-Unsubscribes from sensor data changes.
+Subscribes to data of the pedometer sensor once.
+
+**Required permissions**: ohos.permission.ACTIVITY_MOTION
**System capability**: SystemCapability.Sensors.Sensor
**Parameters**
-| Name | Type | Mandatory | Description |
-| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
-| type | [SensorType](#sensortype) | Yes | Type of the sensor to unsubscribe from, which is **SENSOR_TYPE_ID_AMBIENT_LIGHT**.|
-| callback | Callback<[LightResponse](#lightresponse)> | Yes | Callback used to return the ambient light sensor data. The reported data type in the callback is **LightResponse**. |
+| Name | Type | Mandatory| Description |
+| -------- | ------------------------------------------------------- | ---- | ------------------------------------------------------------ |
+| type | [SensorId](#sensorid9) | Yes | Type of the sensor to subscribe to, which is **PEDOMETER**. |
+| callback | Callback<[PedometerResponse](#pedometerresponse)> | Yes | One-shot callback used to return the pedometer sensor data. The reported data type in the callback is **PedometerResponse**.|
-**Example**
+**Error code**
-```js
-function callback(data) {
- console.info(' Illumination: ' + data.intensity);
-}
-sensor.off(sensor.SensorType.SENSOR_TYPE_ID_AMBIENT_LIGHT, callback);
-```
-
-### AMBIENT_TEMPERATURE
-
-off(type: SensorType.SENSOR_TYPE_ID_AMBIENT_TEMPERATURE, callback?: Callback<AmbientTemperatureResponse>): void
+For details about the following error codes, see [Error Codes of ohos.sensor](../errorcodes/errorcode-sensor.md).
-Unsubscribes from sensor data changes.
-
-**System capability**: SystemCapability.Sensors.Sensor
-
-**Parameters**
-
-| Name | Type | Mandatory | Description |
-| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
-| type | [SensorType](#sensortype) | Yes | Type of the sensor to unsubscribe from, which is **SENSOR_TYPE_ID_AMBIENT_TEMPERATURE**.|
-| callback | Callback<[AmbientTemperatureResponse](#ambienttemperatureresponse)> | Yes | Callback used to return the ambient temperature sensor data. The reported data type in the callback is **AmbientTemperatureResponse**.|
+| Error Code ID| Error Message |
+| -------- | ------------------ |
+| 14500101 | Service exception. |
**Example**
```js
-function callback(data) {
- console.info('Temperature: ' + data.temperature);
+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);
}
-sensor.off( sensor.SensorType.SENSOR_TYPE_ID_AMBIENT_TEMPERATURE, callback);
```
-### AMBIENT_TEMPERATURE
+### PEDOMETER_DETECTION9+
-off(type: SensorType.SENSOR_TYPE_ID_BAROMETER, callback?: Callback<BarometerResponse>): void
+once(type: SensorId.PEDOMETER_DETECTION, callback: Callback<PedometerDetectionResponse>): void
-Unsubscribes from sensor data changes.
+Subscribe to data of the pedometer detection sensor once.
+
+**Required permissions**: ohos.permission.ACTIVITY_MOTION
**System capability**: SystemCapability.Sensors.Sensor
**Parameters**
-| Name | Type | Mandatory | Description |
-| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
-| type | [SensorType](#sensortype) | Yes | Type of the sensor to unsubscribe from, which is **SENSOR_TYPE_ID_BAROMETER**.|
-| callback | Callback<[BarometerResponse](#barometerresponse)> | Yes | Callback used to return the barometer sensor data. The reported data type in the callback is **BarometerResponse**.|
+| Name | Type | Mandatory| Description |
+| -------- | ------------------------------------------------------------ | ---- | ------------------------------------------------------------ |
+| type | [SensorId](#sensorid9) | Yes | Type of the sensor to subscribe to, which is **PEDOMETER_DETECTION**. |
+| callback | Callback<[PedometerDetectionResponse](#pedometerdetectionresponse)> | Yes | One-shot callback used to return the pedometer detection sensor data. The reported data type in the callback is **PedometerDetectionResponse**.|
+
+**Error code**
+
+For details about the following error codes, see [Error Codes of ohos.sensor](../errorcodes/errorcode-sensor.md).
+
+| Error Code ID| Error Message |
+| -------- | ------------------ |
+| 14500101 | Service exception. |
**Example**
```js
-function callback(data) {
- console.info('Atmospheric pressure: ' + data.pressure);
+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);
}
-sensor.off(sensor.SensorType.SENSOR_TYPE_ID_BAROMETER, callback);
```
-### GRAVITY
+### PROXIMITY9+
-off(type: SensorType.SENSOR_TYPE_ID_GRAVITY, callback?: Callback<GravityResponse>): void
+once(type: SensorId.PROXIMITY, callback: Callback<ProximityResponse>): void
-Unsubscribes from sensor data changes.
+Subscribes to data of the proximity sensor once.
**System capability**: SystemCapability.Sensors.Sensor
**Parameters**
-| Name | Type | Mandatory | Description |
-| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
-| type | [SensorType](#sensortype) | Yes | Type of the sensor to unsubscribe from, which is **SENSOR_TYPE_ID_GRAVITY**. |
-| callback | Callback<[GravityResponse](#gravityresponse)> | Yes | Callback used to return the gravity sensor data. The reported data type in the callback is **GravityResponse**.|
+| Name | Type | Mandatory| Description |
+| -------- | ------------------------------------------------------- | ---- | ------------------------------------------------------------ |
+| type | [SensorId](#sensorid9) | Yes | Type of the sensor to subscribe to, which is **PROXIMITY**. |
+| callback | Callback<[ProximityResponse](#proximityresponse)> | Yes | One-shot callback used to return the proximity sensor data. The reported data type in the callback is **ProximityResponse**.|
+
+**Error code**
+
+For details about the following error codes, see [Error Codes of ohos.sensor](../errorcodes/errorcode-sensor.md).
+
+| Error Code ID| Error Message |
+| -------- | ------------------ |
+| 14500101 | Service exception. |
**Example**
```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 {
+ sensor.once(sensor.SensorId.PROXIMITY, function(data) {
+ console.info('Distance: ' + data.distance);
+ }
+ );
+} catch(err) {
+ console.info('once fail, errCode: ' + err.code + ' ,msg: ' + err.message);
}
-sensor.off( sensor.SensorType.SENSOR_TYPE_ID_GRAVITY, callback);
```
-### GYROSCOPE
-
-off(type: SensorType.SENSOR_TYPE_ID_GYROSCOPE, callback?: Callback<GyroscopeResponse>): void
+### ROTATION_VECTOR9+
-Unsubscribes from sensor data changes.
+once(type: SensorId.ROTATION_VECTOR, callback: Callback<RotationVectorResponse>): void
-**Required permissions**: ohos.permission.GYROSCOPE (a system permission)
+Subscribes to data of the rotation vector sensor once.
**System capability**: SystemCapability.Sensors.Sensor
**Parameters**
-| Name | Type | Mandatory | Description |
-| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
-| type | [SensorType](#sensortype) | Yes | Type of the sensor to unsubscribe from, which is **SENSOR_TYPE_ID_GYROSCOPE**.|
-| callback | Callback<[GyroscopeResponse](#gyroscoperesponse)> | Yes | Callback used to return the gyroscope sensor data. The reported data type in the callback is **GyroscopeResponse**.|
+| Name | Type | Mandatory| Description |
+| -------- | ------------------------------------------------------------ | ---- | ------------------------------------------------------------ |
+| type | [SensorId](#sensorid9) | Yes | Type of the sensor to subscribe to, which is **ROTATION_VECTOR**. |
+| callback | Callback<[RotationVectorResponse](#rotationvectorresponse)> | Yes | One-shot callback used to return the rotation vector sensor data. The reported data type in the callback is **RotationVectorResponse**.|
+
+**Error code**
+
+For details about the following error codes, see [Error Codes of ohos.sensor](../errorcodes/errorcode-sensor.md).
+
+| Error Code ID| Error Message |
+| -------- | ------------------ |
+| 14500101 | Service exception. |
**Example**
```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 {
+ 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);
}
-sensor.off(sensor.SensorType.SENSOR_TYPE_ID_GYROSCOPE, callback);
```
-### GYROSCOPE_UNCALIBRATED
-
-off(type: SensorType.SENSOR_TYPE_ID_GYROSCOPE_UNCALIBRATED, callback?: Callback<GyroscopeUncalibratedResponse>): void
+### SIGNIFICANT_MOTION9+
-Unsubscribes from sensor data changes.
+once(type: SensorId.SIGNIFICANT_MOTION, callback: Callback<SignificantMotionResponse>): void
-**Required permissions**: ohos.permission.GYROSCOPE (a system permission)
+Subscribes to data of the significant motion sensor once.
**System capability**: SystemCapability.Sensors.Sensor
**Parameters**
-| Name | Type | Mandatory | Description |
-| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
-| type | [SensorType](#sensortype) | Yes | Type of the sensor to unsubscribe from, which is **SENSOR_TYPE_ID_GYROSCOPE_UNCALIBRATED**.|
-| callback | Callback<[GyroscopeUncalibratedResponse](#gyroscopeuncalibratedresponse)> | Yes | Callback used to return the uncalibrated gyroscope sensor data. The reported data type in the callback is **GyroscopeUncalibratedResponse**.|
+| Name | Type | Mandatory| Description |
+| -------- | ------------------------------------------------------------ | ---- | ------------------------------------------------------------ |
+| type | [SensorId](#sensorid9) | Yes | Type of the sensor to subscribe to, which is **SIGNIFICANT_MOTION**. |
+| callback | Callback<[SignificantMotionResponse](#significantmotionresponse)> | Yes | One-shot callback used to return the significant motion sensor data. The reported data type in the callback is **SignificantMotionResponse**.|
+
+**Error code**
+
+For details about the following error codes, see [Error Codes of ohos.sensor](../errorcodes/errorcode-sensor.md).
+
+| Error Code ID| Error Message |
+| -------- | ------------------ |
+| 14500101 | Service exception. |
**Example**
```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 {
+ 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);
}
-sensor.off(sensor.SensorType.SENSOR_TYPE_ID_GYROSCOPE_UNCALIBRATED, callback);
```
-### HALL
+### WEAR_DETECTION9+
-off(type: SensorType.SENSOR_TYPE_ID_HALL, callback?: Callback<HallResponse>): void
+once(type: SensorId.WEAR_DETECTION, callback: Callback<WearDetectionResponse>): void
-Unsubscribes from sensor data changes.
+Subscribes to data of the wear detection sensor once.
**System capability**: SystemCapability.Sensors.Sensor
**Parameters**
-| Name | Type | Mandatory | Description |
-| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
-| type | [SensorType](#sensortype) | Yes | Type of the sensor to unsubscribe from, which is **SENSOR_TYPE_ID_HALL**. |
-| callback | Callback<[HallResponse](#hallresponse)> | Yes | Callback used to return the Hall effect sensor data. The reported data type in the callback is **HallResponse**.|
+| Name | Type | Mandatory| Description |
+| -------- | ------------------------------------------------------------ | ---- | ------------------------------------------------------------ |
+| type | [SensorId](#sensorid9) | Yes | Type of the sensor to subscribe to, which is **WEAR_DETECTION**. |
+| callback | Callback<[WearDetectionResponse](#weardetectionresponse)> | Yes | One-shot callback used to return the wear detection sensor data. The reported data type in the callback is **WearDetectionResponse**.|
+
+**Error code**
+
+For details about the following error codes, see [Error Codes of ohos.sensor](../errorcodes/errorcode-sensor.md).
+
+| Error Code ID| Error Message |
+| -------- | ------------------ |
+| 14500101 | Service exception. |
**Example**
```js
-function callback(data) {
- console.info('Status: ' + data.status);
+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);
}
-sensor.off(sensor.SensorType.SENSOR_TYPE_ID_HALL, callback);
```
-### HEART_RATEdeprecated
+## sensor.off9+
-off(type: SensorType.SENSOR_TYPE_ID_HEART_RATE, callback?: Callback<HeartRateResponse>): void
+### ACCELEROMETER9+
-Unsubscribes from sensor data changes.
+off(type: SensorId.ACCELEROMETER, callback?: Callback<AccelerometerResponse>): void
-This API is deprecated since API version 9. You are advised to use **sensor.off.HEART_BEAT_RATE9+** instead.
+Unsubscribes from data of the acceleration sensor.
-**Required permissions**: ohos.permission.READ_HEALTH_DATA
+**Required permissions**: ohos.permission.ACCELEROMETER
**System capability**: SystemCapability.Sensors.Sensor
**Parameters**
-| Name | Type | Mandatory | Description |
-| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
-| type | [SensorType](#sensortype)[SensorType](#sensortype) | Yes | Type of the sensor to unsubscribe from, which is **SENSOR_TYPE_ID_HEART_RATE**.|
-| callback | Callback<[HeartRateResponse](#heartrateresponse)> | Yes | One-shot callback used to return the heart rate sensor data. The reported data type in the callback is **HeartRateResponse**.|
+| Name | Type | Mandatory| Description |
+| -------- | ------------------------------------------------------------ | ---- | ------------------------------------------------------------ |
+| type | [SensorId](#sensorid9) | Yes | Type of the sensor to unsubscribe from, which is **ACCELEROMETER**. |
+| callback | Callback<[AccelerometerResponse](#accelerometerresponse)> | Yes | Callback used to return the acceleration sensor data. The reported data type in the callback is **AccelerometerResponse**.|
**Example**
```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);
+ }
+ sensor.off(sensor.SensorId.ACCELEROMETER, callback);
+} catch(err) {
+ console.info('off fail, errCode: ' + err.code + ' ,msg: ' + err.message);
}
-sensor.off(sensor.SensorType.SENSOR_TYPE_ID_HEART_RATE, callback);
```
-### HEART_BEAT_RATE9+
+### ACCELEROMETER_UNCALIBRATED9+
-off(type: SensorType.SENSOR_TYPE_ID_HEART_BEAT_RATE, callback?: Callback<HeartRateResponse>): void
+off(type: SensorId.ACCELEROMETER_UNCALIBRATED, callback?: Callback<AccelerometerUncalibratedResponse>): void
-Unsubscribes from sensor data changes.
+Unsubscribes from data of the uncalibrated acceleration sensor.
-**Required permissions**: ohos.permission.READ_HEALTH_DATA
+**Required permissions**: ohos.permission.ACCELEROMETER
**System capability**: SystemCapability.Sensors.Sensor
**Parameters**
-| Name | Type | Mandatory | Description |
-| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
-| type | [SensorType](#sensortype)[SensorType](#sensortype) | Yes | Type of the sensor to unsubscribe from, which is **SENSOR_TYPE_ID_HEART_BEAT_RATE**.|
-| callback | Callback<[HeartRateResponse](#heartrateresponse)> | Yes | One-shot callback used to return the heart rate sensor data. The reported data type in the callback is **HeartRateResponse**.|
+| Name | Type | Mandatory| Description |
+| -------- | ------------------------------------------------------------ | ---- | ------------------------------------------------------------ |
+| type | [SensorId](#sensorid9) | Yes | Type of the sensor to unsubscribe from, which is **ACCELEROMETER_UNCALIBRATED**.|
+| callback | Callback<[AccelerometerUncalibratedResponse](#accelerometeruncalibratedresponse)> | Yes | Callback used to return the uncalibrated acceleration sensor data. The reported data type in the callback is **AccelerometerUncalibratedResponse**.|
**Example**
```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.ACCELEROMETER_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
+### AMBIENT_LIGHT9+
-off(type: SensorType.SENSOR_TYPE_ID_HUMIDITY, callback?: Callback<HumidityResponse>): void
+off(type: SensorId.AMBIENT_LIGHT, callback?: Callback<LightResponse>): void
-Unsubscribes from sensor data changes.
+Unsubscribes from data of the ambient light sensor.
**System capability**: SystemCapability.Sensors.Sensor
**Parameters**
-| Name | Type | Mandatory | Description |
-| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
-| type | [SensorType](#sensortype) | Yes | Type of the sensor to unsubscribe from, which is **SENSOR_TYPE_ID_HUMIDITY**. |
-| callback | Callback<[HumidityResponse](#humidityresponse)> | Yes | Callback used to return the humidity sensor data. The reported data type in the callback is **HumidityResponse**.|
+| Name | Type | Mandatory| Description |
+| -------- | ----------------------------------------------- | ---- | ------------------------------------------------------------ |
+| type | [SensorId](#sensorid9) | Yes | Type of the sensor to unsubscribe from, which is **AMBIENT_LIGHT**. |
+| callback | Callback<[LightResponse](#lightresponse)> | Yes | Callback used to return the ambient light sensor data. The reported data type in the callback is **LightResponse**.|
**Example**
```js
-function callback(data) {
- console.info('Humidity: ' + data.humidity);
+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);
}
-sensor.off(sensor.SensorType.SENSOR_TYPE_ID_HUMIDITY, callback);
```
-### LINEAR_ACCELERATIONdeprecated
-
-off(type: SensorType.SENSOR_TYPE_ID_LINEAR_ACCELERATION, callback?: Callback<LinearAccelerometerResponse>): void
-
-Unsubscribes from sensor data changes.
+### AMBIENT_TEMPERATURE9+
-This API is deprecated since API version 9. You are advised to use **sensor.off.LINEAR_ACCELEROMETER9+** instead.
+off(type: SensorId.AMBIENT_TEMPERATURE, callback?: Callback<AmbientTemperatureResponse>): void
-**Required permissions**: ohos.permission.ACCELEROMETER (a system permission)
+Unsubscribes from data of the ambient temperature sensor.
**System capability**: SystemCapability.Sensors.Sensor
**Parameters**
-| Name | Type | Mandatory | Description |
-| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
-| type | [SensorType](#sensortype) | Yes | Type of the sensor to unsubscribe from, which is **SENSOR_TYPE_ID_LINEAR_ACCELERATION**.|
-| callback | Callback<[LinearAccelerometerResponse](#linearaccelerometerresponse)> | Yes | Callback used to return the acceleration sensor data. The reported data type in the callback is **LinearAccelerometerResponse**.|
+| Name | Type | Mandatory| Description |
+| -------- | ------------------------------------------------------------ | ---- | ------------------------------------------------------------ |
+| type | [SensorId](#sensorid9) | Yes | Type of the sensor to unsubscribe from, which is **AMBIENT_TEMPERATURE**. |
+| callback | Callback<[AmbientTemperatureResponse](#ambienttemperatureresponse)> | Yes | Callback used to return the ambient temperature sensor data. The reported data type in the callback is **AmbientTemperatureResponse**.|
**Example**
```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_LINEAR_ACCELERATION, callback);
```
-### LINEAR_ACCELEROMETER9+
-
-off(type: SensorType.SENSOR_TYPE_ID_LINEAR_ACCELEROMETER, callback?: Callback<LinearAccelerometerResponse>): void
+### BAROMETER9+
-Unsubscribes from sensor data changes.
+off(type: SensorId.BAROMETER, callback?: Callback<BarometerResponse>): void
-**Required permissions**: ohos.permission.ACCELEROMETER (a system permission)
+Unsubscribes from data of the barometer sensor.
**System capability**: SystemCapability.Sensors.Sensor
**Parameters**
-| Name | Type | Mandatory | Description |
-| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
-| type | [SensorType](#sensortype) | Yes | Type of the sensor to unsubscribe from, which is **SENSOR_TYPE_ID_LINEAR_ACCELEROMETER**.|
-| callback | Callback<[LinearAccelerometerResponse](#linearaccelerometerresponse)> | Yes | Callback used to return the acceleration sensor data. The reported data type in the callback is **LinearAccelerometerResponse**.|
+| Name | Type | Mandatory| Description |
+| -------- | ------------------------------------------------------- | ---- | ------------------------------------------------------------ |
+| type | [SensorId](#sensorid9) | Yes | Type of the sensor to unsubscribe from, which is **BAROMETER**. |
+| callback | Callback<[BarometerResponse](#barometerresponse)> | Yes | Callback used to return the barometer sensor data. The reported data type in the callback is **BarometerResponse**.|
**Example**
```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('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_LINEAR_ACCELEROMETER, callback);
```
-### MAGNETIC_FIELD
+### GRAVITY9+
- off(type: SensorType.SENSOR_TYPE_ID_MAGNETIC_FIELD, callback?: Callback<MagneticFieldResponse>): void
+off(type: SensorId.GRAVITY, callback?: Callback<GravityResponse>): void
-Unsubscribes from sensor data changes.
+Unsubscribes from data of the gravity sensor.
**System capability**: SystemCapability.Sensors.Sensor
**Parameters**
-| Name | Type | Mandatory | Description |
-| ---------------- | ---------------------------------------- | ---- | ---------------------------------------- |
-| type | [SensorType](#sensortype) | Yes | Type of the sensor to unsubscribe from, which is **SENSOR_TYPE_ID_MAGNETIC_FIELD**.|
-| callbackcallback | Callback<[MagneticFieldResponse](#magneticfieldresponse)> | Yes | Callback used to return the magnetic field sensor data. The reported data type in the callback is **MagneticFieldResponse**.|
+| Name | Type | Mandatory| Description |
+| -------- | --------------------------------------------------- | ---- | ------------------------------------------------------------ |
+| type | [SensorId](#sensorid9) | Yes | Type of the sensor to unsubscribe from, which is **GRAVITY**. |
+| callback | Callback<[GravityResponse](#gravityresponse)> | Yes | Callback used to return the gravity sensor data. The reported data type in the callback is **GravityResponse**.|
**Example**
```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('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_MAGNETIC_FIELD, callback);
```
-### MAGNETIC_FIELD_UNCALIBRATED
+### GYROSCOPE9+
- off(type: SensorType.SENSOR_TYPE_ID_MAGNETIC_FIELD_UNCALIBRATED, callback?: Callback<MagneticFieldUncalibratedResponse>): void
+off(type: SensorId.GYROSCOPE, callback?: Callback<GyroscopeResponse>): void
-Unsubscribes from sensor data changes.
+Unsubscribes from data of the gyroscope sensor.
+
+**Required permissions**: ohos.permission.GYROSCOPE
**System capability**: SystemCapability.Sensors.Sensor
**Parameters**
-| Name | Type | Mandatory | Description |
-| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
-| type | [SensorType](#sensortype) | Yes | Type of the sensor to unsubscribe from, which is **SENSOR_TYPE_ID_MAGNETIC_FIELD_UNCALIBRATED**.|
-| callback | Callback<[MagneticFieldUncalibratedResponse](#magneticfielduncalibratedresponse)> | Yes | Callback used to return the uncalibrated magnetic field sensor data. The reported data type in the callback is **MagneticFieldUncalibratedResponse**.|
+| Name | Type | Mandatory| Description |
+| -------- | ------------------------------------------------------- | ---- | ------------------------------------------------------------ |
+| type | [SensorId](#sensorid9) | Yes | Type of the sensor to unsubscribe from, which is **GYROSCOPE**. |
+| callback | Callback<[GyroscopeResponse](#gyroscoperesponse)> | Yes | Callback used to return the gyroscope sensor data. The reported data type in the callback is **GyroscopeResponse**.|
**Example**
```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);
+ }
+ 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_MAGNETIC_FIELD_UNCALIBRATED, callback);
```
-### ORIENTATION
+### GYROSCOPE_UNCALIBRATED9+
- off(type: SensorType.SENSOR_TYPE_ID_ORIENTATION, callback?: Callback<OrientationResponse>): void
+off(type: SensorId.GYROSCOPE_UNCALIBRATED, callback?: Callback<GyroscopeUncalibratedResponse>): void
-Unsubscribes from sensor data changes.
+ Unsubscribes from data of the uncalibrated gyroscope sensor.
+
+**Required permissions**: ohos.permission.GYROSCOPE
**System capability**: SystemCapability.Sensors.Sensor
**Parameters**
-| Name | Type | Mandatory | Description |
-| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
-| type | [SensorType](#sensortype) | Yes | Type of the sensor to unsubscribe from, which is **SENSOR_TYPE_ID_ORIENTATION**.|
-| callback | Callback<[OrientationResponse](#orientationresponse)> | Yes | Callback used to return the orientation sensor data. The reported data type in the callback is **OrientationResponse**.|
+| Name | Type | Mandatory| Description |
+| -------- | ------------------------------------------------------------ | ---- | ------------------------------------------------------------ |
+| type | [SensorId](#sensorid9) | Yes | Type of the sensor to unsubscribe from, which is **GYROSCOPE_UNCALIBRATED**.|
+| callback | Callback<[GyroscopeUncalibratedResponse](#gyroscopeuncalibratedresponse)> | Yes | Callback used to return the uncalibrated gyroscope sensor data. The reported data type in the callback is **GyroscopeUncalibratedResponse**.|
**Example**
```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('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_ORIENTATION, callback);
```
-### PEDOMETER
-
-off(type: SensorType.SENSOR_TYPE_ID_PEDOMETER, callback?: Callback<PedometerResponse>): void
+### HALL9+
-Unsubscribes from sensor data changes.
+off(type: SensorId.HALL, callback?: Callback<HallResponse>): void
-**Required permissions**: ohos.permission.ACTIVITY_MOTION
+Unsubscribes from data of the Hall effect sensor.
**System capability**: SystemCapability.Sensors.Sensor
**Parameters**
-| Name | Type | Mandatory | Description |
-| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
-| type | [SensorType](#sensortype) | Yes | Type of the sensor to unsubscribe from, which is **SENSOR_TYPE_ID_PEDOMETER**. |
-| callback | Callback<[PedometerResponse](#pedometerresponse)> | Yes | Callback used to return the pedometer sensor data. The reported data type in the callback is **PedometerResponse**.|
+| Name | Type | Mandatory| Description |
+| -------- | --------------------------------------------- | ---- | ------------------------------------------------------------ |
+| type | [SensorId](#sensorid9) | Yes | Type of the sensor to unsubscribe from, which is **HALL**. |
+| callback | Callback<[HallResponse](#hallresponse)> | Yes | Callback used to return the Hall effect sensor data. The reported data type in the callback is **HallResponse**.|
**Example**
```js
-function callback(data) {
- console.info('Steps: ' + data.steps);
+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_PEDOMETER, callback);
```
-### PEDOMETER_DETECTION
+### HEART_RATE9+
-off(type: SensorType.SENSOR_TYPE_ID_PEDOMETER_DETECTION, callback?: Callback<PedometerDetectionResponse>): void
+off(type: SensorId.HEART_RATE, callback?: Callback<HeartRateResponse>): void
-Unsubscribes from sensor data changes.
+Unsubscribes from data of the heart rate sensor.
-**Required permissions**: ohos.permission.ACTIVITY_MOTION
+**Required permissions**: ohos.permission.READ_HEALTH_DATA
**System capability**: SystemCapability.Sensors.Sensor
**Parameters**
-| Name | Type | Mandatory | Description |
-| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
-| type | [SensorType](#sensortype) | Yes | Type of the sensor to unsubscribe from, which is **SENSOR_TYPE_ID_PEDOMETER_DETECTION**.|
-| callback | Callback<[PedometerDetectionResponse](#pedometerdetectionresponse)> | Yes | Callback used to return the pedometer detection sensor data. The reported data type in the callback is **PedometerDetectionResponse**.|
+| Name | Type | Mandatory| Description |
+| -------- | ------------------------------------------------------- | ---- | ------------------------------------------------------------ |
+| type | [SensorId](#sensorid9) | Yes | Type of the sensor to unsubscribe from, which is **HEART_RATE**. |
+| callback | Callback<[HeartRateResponse](#heartrateresponse)> | Yes | One-shot callback used to return the heart rate sensor data. The reported data type in the callback is **HeartRateResponse**.|
**Example**
```js
-function callback(data) {
- console.info('Scalar data: ' + data.scalar);
+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_PEDOMETER_DETECTION, callback);
```
-### PROXIMITY
+### HUMIDITY9+
-off(type: SensorType.SENSOR_TYPE_ID_PROXIMITY, callback?: Callback<ProximityResponse>): void
+off(type: SensorId.HUMIDITY, callback?: Callback<HumidityResponse>): void
-Unsubscribes from sensor data changes.
+Unsubscribes from data of the humidity sensor.
**System capability**: SystemCapability.Sensors.Sensor
**Parameters**
-| Name | Type | Mandatory | Description |
-| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
-| type | [SensorType](#sensortype) | Yes | Type of the sensor to unsubscribe from, which is **SENSOR_TYPE_ID_PROXIMITY**.|
-| callback | Callback<[ProximityResponse](#proximityresponse)> | Yes | Callback used to return the proximity sensor data. The reported data type in the callback is **ProximityResponse**.|
+| Name | Type | Mandatory| Description |
+| -------- | ----------------------------------------------------- | ---- | ------------------------------------------------------------ |
+| type | [SensorId](#sensorid9) | Yes | Type of the sensor to unsubscribe from, which is **HUMIDITY**. |
+| callback | Callback<[HumidityResponse](#humidityresponse)> | Yes | Callback used to return the humidity sensor data. The reported data type in the callback is **HumidityResponse**.|
**Example**
```js
-function callback(data) {
- console.info('Distance: ' + data.distance);
+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_PROXIMITY, callback);
```
-### ROTATION_VECTOR
+### LINEAR_ACCELEROMETER9+
-off(type: SensorType.SENSOR_TYPE_ID_ROTATION_VECTOR, callback?: Callback<RotationVectorResponse>): void
+off(type: SensorId.LINEAR_ACCELEROMETER, callback?: Callback<LinearAccelerometerResponse>): void
-Unsubscribes from sensor data changes.
+Unsubscribes from data of the linear acceleration sensor.
+
+**Required permissions**: ohos.permission.ACCELEROMETER
**System capability**: SystemCapability.Sensors.Sensor
**Parameters**
-| Name | Type | Mandatory | Description |
-| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
-| type | [SensorType](#sensortype) | Yes | Type of the sensor to unsubscribe from, which is **SENSOR_TYPE_ID_ROTATION_VECTOR**.|
-| callback | Callback<[RotationVectorResponse](#rotationvectorresponse)> | Yes | Callback used to return the rotation vector sensor data. The reported data type in the callback is **RotationVectorResponse**.|
+| Name | Type | Mandatory| Description |
+| -------- | ------------------------------------------------------------ | ---- | ------------------------------------------------------------ |
+| type | [SensorId](#sensorid9) | Yes | Type of the sensor to unsubscribe from, which is **LINEAR_ACCELERATION**. |
+| callback | Callback<[LinearAccelerometerResponse](#linearaccelerometerresponse)> | Yes | Callback used to return the linear acceleration sensor data. The reported data type in the callback is **LinearAccelerometerResponse**.|
**Example**
```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 {
+ 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_ROTATION_VECTOR, callback);
```
-### SIGNIFICANT_MOTION
+### MAGNETIC_FIELD9+
-off(type: SensorType.SENSOR_TYPE_ID_SIGNIFICANT_MOTION, callback?: Callback<SignificantMotionResponse>): void
+off(type: SensorId.MAGNETIC_FIELD, callback?: Callback<MagneticFieldResponse>): void
-Unsubscribes from sensor data changes.
+Unsubscribes from data of the magnetic field sensor.
**System capability**: SystemCapability.Sensors.Sensor
**Parameters**
-| Name | Type | Mandatory | Description |
-| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
-| type | [SensorType](#sensortype) | Yes | Type of the sensor to unsubscribe from, which is **SENSOR_TYPE_ID_SIGNIFICANT_MOTION**.|
-| callback | Callback<[SignificantMotionResponse](#significantmotionresponse)> | Yes | Callback used to return the significant motion sensor data. The reported data type in the callback is **SignificantMotionResponse**.|
+| Name | Type | Mandatory| Description |
+| -------- | ------------------------------------------------------------ | ---- | ------------------------------------------------------------ |
+| type | [SensorId](#sensorid9) | Yes | Type of the sensor to unsubscribe from, which is **MAGNETIC_FIELD**. |
+| callback | Callback<[MagneticFieldResponse](#magneticfieldresponse)> | Yes | Callback used to return the magnetic field sensor data. The reported data type in the callback is **MagneticFieldResponse**.|
**Example**
```js
-function callback(data) {
- console.info('Scalar data: ' + data.scalar);
+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);
}
-sensor.off(sensor.SensorType.SENSOR_TYPE_ID_SIGNIFICANT_MOTION, callback);
```
-### WEAR_DETECTION
+### MAGNETIC_FIELD_UNCALIBRATED9+
-off(type: SensorType.SENSOR_TYPE_ID_WEAR_DETECTION, callback?: Callback<WearDetectionResponse>): void
+off(type: SensorId.MAGNETIC_FIELD_UNCALIBRATED, callback?: Callback<MagneticFieldUncalibratedResponse>): void
-Unsubscribes from sensor data changes.
+Unsubscribes from data of the uncalibrated magnetic field sensor.
**System capability**: SystemCapability.Sensors.Sensor
**Parameters**
-| Name | Type | Mandatory | Description |
-| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
-| type | [SensorType](#sensortype) | Yes | Type of the sensor to unsubscribe from, which is **SENSOR_TYPE_ID_WEAR_DETECTION**.|
-| callback | Callback<[WearDetectionResponse](#weardetectionresponse)> | Yes | Callback used to return the wear detection sensor data. The reported data type in the callback is **WearDetectionResponse**.|
+| Name | Type | Mandatory| Description |
+| -------- | ------------------------------------------------------------ | ---- | ------------------------------------------------------------ |
+| type | [SensorId](#sensorid9) | Yes | Type of the sensor to unsubscribe from, which is **MAGNETIC_FIELD_UNCALIBRATED**.|
+| callback | Callback<[MagneticFieldUncalibratedResponse](#magneticfielduncalibratedresponse)> | Yes | Callback used to return the uncalibrated magnetic field sensor data. The reported data type in the callback is **MagneticFieldUncalibratedResponse**.|
**Example**
```js
-function accCallback(data) {
- console.info('Wear status: ' + data.value);
+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_WEAR_DETECTION, accCallback);
```
-## sensor.transformCoordinateSystem
+### ORIENTATION9+
-transformCoordinateSystem(inRotationVector: Array<number>, coordinates: CoordinatesOptions, callback: AsyncCallback<Array<number>>): void
+off(type: SensorId.ORIENTATION, callback?: Callback<OrientationResponse>): void
-Rotates a rotation vector so that it can represent the coordinate system in different ways. This API uses an asynchronous callback to return the result.
+Unsubscribes from data of the orientation sensor.
**System capability**: SystemCapability.Sensors.Sensor
**Parameters**
-| Name | Type | Mandatory | Description |
-| ---------------- | ---------------------------------------- | ---- | ----------- |
-| inRotationVector | Array<number> | Yes | Rotation vector to rotate. |
-| coordinates | [CoordinatesOptions](#coordinatesoptions) | Yes | Direction of the coordinate system. |
-| callback | AsyncCallback<Array<number>> | Yes | Callback used to return the rotation vector after being rotated.|
+| Name | Type | Mandatory| Description |
+| -------- | ----------------------------------------------------------- | ---- | ------------------------------------------------------------ |
+| type | [SensorId](#sensorid9) | Yes | Type of the sensor to unsubscribe from, which is **ORIENTATION**. |
+| callback | Callback<[OrientationResponse](#orientationresponse)> | Yes | Callback used to return the orientation sensor data. The reported data type in the callback is **OrientationResponse**.|
**Example**
```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 {
+ 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.transformCoordinateSystem
-transformCoordinateSystem(inRotationVector: Array<number>, coordinates: CoordinatesOptions): Promise<Array<number>>
+### PEDOMETER9+
-Rotates a rotation vector so that it can represent the coordinate system in different ways. This API uses a promise to return the result.
+off(type: SensorId.PEDOMETER, callback?: Callback<PedometerResponse>): void
-**System capability**: SystemCapability.Sensors.Sensor
+Unsubscribes from data of the pedometer sensor.
-**Parameters**
+**Required permissions**: ohos.permission.ACTIVITY_MOTION
-| Name | Type | Mandatory | Description |
-| ---------------- | ---------------------------------------- | ---- | -------- |
-| inRotationVector | Array<number> | Yes | Rotation vector to rotate. |
-| coordinates | [CoordinatesOptions](#coordinatesoptions) | Yes | Direction of the coordinate system.|
+**System capability**: SystemCapability.Sensors.Sensor
-**Return value**
+**Parameters**
-| Type | Description |
-| ---------------------------------- | ----------- |
-| Promise<Array<number>> | Promise used to return the rotation vector after being rotated.|
+| Name | Type | Mandatory| Description |
+| -------- | ------------------------------------------------------- | ---- | ------------------------------------------------------------ |
+| type | [SensorId](#sensorid9) | Yes | Type of the sensor to unsubscribe from, which is **PEDOMETER**. |
+| callback | Callback<[PedometerResponse](#pedometerresponse)> | Yes | Callback used to return the pedometer sensor data. The reported data type in the callback is **PedometerResponse**.|
**Example**
```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 {
+ 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);
+}
```
-## sensor.getGeomagneticField
+### PEDOMETER_DETECTION9+
-getGeomagneticField(locationOptions: LocationOptions, timeMillis: number, callback: AsyncCallback<GeomagneticResponse>): void
+off(type: SensorId.PEDOMETER_DETECTION, callback?: Callback<PedometerDetectionResponse>): void
-Obtains the geomagnetic field of a geographic location. This API uses an asynchronous callback to return the result.
+Unsubscribes from data of the pedometer detection sensor.
+
+**Required permissions**: ohos.permission.ACTIVITY_MOTION
**System capability**: SystemCapability.Sensors.Sensor
**Parameters**
-| Name | Type | Mandatory| Description |
-| --------------- | ------------------------------------------------------------ | ---- | ---------------------------------- |
-| locationOptions | [LocationOptions](#locationoptions) | Yes | Geographic location. |
-| timeMillis | number | Yes | Time for obtaining the magnetic declination, in milliseconds.|
-| callback | AsyncCallback<[GeomagneticResponse](#geomagneticresponse)> | Yes | Callback used to return the geomagnetic field. |
+
+| Name | Type | Mandatory| Description |
+| -------- | ------------------------------------------------------------ | ---- | ------------------------------------------------------------ |
+| type | [SensorId](#sensorid9) | Yes | Type of the sensor to unsubscribe from, which is **PEDOMETER_DETECTION**. |
+| callback | Callback<[PedometerDetectionResponse](#pedometerdetectionresponse)> | Yes | Callback used to return the pedometer detection sensor data. The reported data type in the callback is **PedometerDetectionResponse**.|
**Example**
+
```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;
+try {
+ function callback(data) {
+ console.info('Scalar data: ' + data.scalar);
}
- 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.off(sensor.SensorId.PEDOMETER_DETECTION, callback);
+} catch(err) {
+ console.info('off fail, errCode: ' + err.code + ' ,msg: ' + err.message);
+}
```
-## sensor.getGeomagneticField
-getGeomagneticField(locationOptions: LocationOptions, timeMillis: number): Promise<GeomagneticResponse>
+### PROXIMITY9+
-Obtains the geomagnetic field of a geographic location. This API uses a promise to return the result.
+off(type: SensorId.PROXIMITY, callback?: Callback<ProximityResponse>): void
+
+Unsubscribes from data of the proximity sensor.
**System capability**: SystemCapability.Sensors.Sensor
**Parameters**
-| Name | Type | Mandatory | Description |
-| --------------- | ----------------------------------- | ---- | ----------------- |
-| locationOptions | [LocationOptions](#locationoptions) | Yes | Geographic location. |
-| timeMillis | number | Yes | Time for obtaining the magnetic declination, in milliseconds.|
-**Return value**
-| Type | Description |
-| ---------------------------------------- | ------- |
-| Promise<[GeomagneticResponse](#geomagneticresponse)> | Promise used to return the geomagnetic field.|
+| Name | Type | Mandatory| Description |
+| -------- | ------------------------------------------------------- | ---- | ------------------------------------------------------------ |
+| type | [SensorId](#sensorid9) | Yes | Type of the sensor to unsubscribe from, which is **PROXIMITY**. |
+| callback | Callback<[ProximityResponse](#proximityresponse)> | Yes | Callback used to return the proximity sensor data. The reported data type in the callback is **ProximityResponse**.|
**Example**
- ```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.');
- })
- ```
-## sensor.getAltitude
+```js
+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);
+}
+```
+
+### ROTATION_VECTOR9+
-getAltitude(seaPressure: number, currentPressure: number, callback: AsyncCallback<number>): void
+off(type: SensorId.ROTATION_VECTOR, callback?: Callback<RotationVectorResponse>): void
-Obtains the altitude at which the device is located based on the sea-level atmospheric pressure and the current atmospheric pressure. This API uses an asynchronous callback to return the result.
+Unsubscribes from data of the rotation vector sensor.
**System capability**: SystemCapability.Sensors.Sensor
**Parameters**
-| Name | Type | Mandatory | Description |
-| --------------- | --------------------------- | ---- | -------------------- |
-| seaPressure | number | Yes | Sea-level atmospheric pressure, in hPa. |
-| currentPressure | number | Yes | Atmospheric pressure at the altitude where the device is located, in hPa.|
-| callback | AsyncCallback<number> | Yes | Callback used to return the altitude, in meters. |
+| Name | Type | Mandatory| Description |
+| -------- | ------------------------------------------------------------ | ---- | ------------------------------------------------------------ |
+| type | [SensorId](#sensorid9) | Yes | Type of the sensor to unsubscribe from, which is **ROTATION_VECTOR**. |
+| callback | Callback<[RotationVectorResponse](#rotationvectorresponse)> | Yes | Callback used to return the rotation vector sensor data. The reported data type in the callback is **RotationVectorResponse**.|
**Example**
- ```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 {
+ 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.getAltitude
+### SIGNIFICANT_MOTION9+
-getAltitude(seaPressure: number, currentPressure: number): Promise<number>
+off(type: SensorId.SIGNIFICANT_MOTION, callback?: Callback<SignificantMotionResponse>): void
-Obtains the altitude at which the device is located based on the sea-level atmospheric pressure and the current atmospheric pressure. This API uses a promise to return the result.
+Unsubscribes from data of the significant motion sensor.
**System capability**: SystemCapability.Sensors.Sensor
**Parameters**
-| Name | Type | Mandatory | Description |
-| --------------- | ------ | ---- | -------------------- |
-| seaPressure | number | Yes | Sea-level atmospheric pressure, in hPa. |
-| currentPressure | number | Yes | Atmospheric pressure at the altitude where the device is located, in hPa.|
+| Name | Type | Mandatory| Description |
+| -------- | ------------------------------------------------------------ | ---- | ------------------------------------------------------------ |
+| type | [SensorId](#sensorid9) | Yes | Type of the sensor to unsubscribe from, which is **SIGNIFICANT_MOTION**. |
+| callback | Callback<[SignificantMotionResponse](#significantmotionresponse)> | Yes | Callback used to return the significant motion sensor data. The reported data type in the callback is **SignificantMotionResponse**.|
-**Return value**
+**Example**
-| Type | Description |
-| --------------------- | ------------------ |
-| Promise<number> | Promise used to return the altitude, in meters.|
+```js
+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);
+}
+```
-**Example**
+### WEAR_DETECTION9+
- ```js
- const promise = sensor.getAltitude(0, 200);
- promise.then((data) => {
- console.info(' sensor_getAltitude_Promise success', data);
- }).catch((err) => {
- console.error("Operation failed");
- })
- ```
+off(type: SensorId.WEAR_DETECTION, callback?: Callback<WearDetectionResponse>): void
+Unsubscribes from data of the wear detection sensor.
-## sensor.getGeomagneticDip
+**System capability**: SystemCapability.Sensors.Sensor
-getGeomagneticDip(inclinationMatrix: Array<number>, callback: AsyncCallback<number>): void
+**Parameters**
-Obtains the magnetic dip based on the inclination matrix. This API uses an asynchronous callback to return the result.
+| Name | Type | Mandatory| Description |
+| -------- | ------------------------------------------------------------ | ---- | ------------------------------------------------------------ |
+| type | [SensorId](#sensorid9) | Yes | Type of the sensor to unsubscribe from, which is **WEAR_DETECTION**. |
+| callback | Callback<[WearDetectionResponse](#weardetectionresponse)> | Yes | Callback used to return the wear detection sensor data. The reported data type in the callback is **WearDetectionResponse**.|
+
+**Example**
+
+```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
+
+Obtains the geomagnetic field of a geographic location. This API uses an asynchronous callback to return the result.
**System capability**: SystemCapability.Sensors.Sensor
**Parameters**
-| Name | Type | Mandatory | Description |
-| ----------------- | --------------------------- | ---- | -------------- |
-| inclinationMatrix | Array<number> | Yes | Inclination matrix. |
-| callback | AsyncCallback<number> | Yes | Callback used to return the magnetic dip, in radians.|
+| Name | Type | Mandatory| Description |
+| --------------- | ------------------------------------------------------------ | ---- | ---------------------------------- |
+| locationOptions | [LocationOptions](#locationoptions) | Yes | Geographic location. |
+| timeMillis | number | Yes | Time for obtaining the magnetic declination, in milliseconds.|
+| callback | AsyncCallback<[GeomagneticResponse](#geomagneticresponse)> | Yes | Callback used to return the geomagnetic field. |
+
+**Error code**
+
+For details about the following error codes, see [Error Codes of sensor.getGeomagneticInfo](../errorcodes/errorcode-sensor.md).
+
+| Error Code ID| Error Message |
+| -------- | ------------------ |
+| 14500101 | Service exception. |
**Example**
- ```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);
- })
- ```
+```js
+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.getGeomagneticDip
+## sensor.getGeomagneticInfo9+
-getGeomagneticDip(inclinationMatrix: Array<number>): Promise<number>
+getGeomagneticInfo(locationOptions: LocationOptions, timeMillis: number): Promise<GeomagneticResponse>
-Obtains the magnetic dip based on the inclination matrix. This API uses a promise to return the result.
+Obtains the geomagnetic field of a geographic location. This API uses a promise to return the result.
**System capability**: SystemCapability.Sensors.Sensor
**Parameters**
-| Name | Type | Mandatory | Description |
-| ----------------- | ------------------- | ---- | ------- |
-| inclinationMatrix | Array<number> | Yes | Inclination matrix.|
+| Name | Type | Mandatory| Description |
+| --------------- | ----------------------------------- | ---- | ---------------------------------- |
+| locationOptions | [LocationOptions](#locationoptions) | Yes | Geographic location. |
+| timeMillis | number | Yes | Time for obtaining the magnetic declination, in milliseconds.|
**Return value**
-| Type | Description |
-| --------------------- | -------------- |
-| Promise<number> | Promise used to return the magnetic dip, in radians.|
+| Type | Description |
+| ---------------------------------------------------------- | -------------- |
+| Promise<[GeomagneticResponse](#geomagneticresponse)> | Promise used to return the geomagnetic field.|
+
+**Error code**
+
+For details about the following error codes, see [Error Codes of sensor.getGeomagneticInfo](../errorcodes/errorcode-sensor.md).
+
+| Error Code ID| Error Message |
+| -------- | ------------------ |
+| 14500101 | Service exception. |
**Example**
- ```js
- const promise = sensor.getGeomagneticDip([1, 0, 0, 0, 1, 0, 0, 0, 1]);
+```js
+try {
+ const promise = sensor.getGeomagneticInfo({latitude:80, longitude:0, altitude:0}, 1580486400000);
promise.then((data) => {
- console.info('getGeomagneticDip_promise successed', data);
- }).catch((err) => {
- console.error("Operation failed");
+ 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. getAngleModify
+## sensor.getDeviceAltitude9+
-getAngleModify(currentRotationMatrix: Array<number>, preRotationMatrix: Array<number>, callback: AsyncCallback<Array<number>>): void
+getDeviceAltitude(seaPressure: number, currentPressure: number, callback: AsyncCallback<number>): void
-Obtains the angle change between two rotation matrices. This API uses an asynchronous callback to return the result.
+Obtains the altitude at which the device is located based on the sea-level atmospheric pressure and the current atmospheric pressure. This API uses an asynchronous callback to return the result.
**System capability**: SystemCapability.Sensors.Sensor
**Parameters**
-| Name | Type | Mandatory | Description |
-| --------------------- | ---------------------------------------- | ---- | ------------------ |
-| currentRotationMatrix | Array<number> | Yes | Current rotation matrix. |
-| preRotationMatrix | Array<number> | Yes | The other rotation matrix. |
-| callback | AsyncCallback<Array<number>> | Yes | Callback used to return the angle change around the z, x, and y axes.|
+| Name | Type | Mandatory| Description |
+| --------------- | --------------------------- | ---- | ------------------------------------- |
+| seaPressure | number | Yes | Sea-level atmospheric pressure, in hPa. |
+| currentPressure | number | Yes | Atmospheric pressure at the altitude where the device is located, in hPa.|
+| callback | AsyncCallback<number> | Yes | Callback used to return the altitude, in meters. |
-**Example**
+**Error code**
- ```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]);
- }
- })
- ```
+For details about the following error codes, see [Error Codes of sensor.getDeviceAltitude](../errorcodes/errorcode-sensor.md).
+| Error Code ID| Error Message |
+| -------- | ------------------ |
+| 14500101 | Service exception. |
-## sensor. getAngleModify
+**Example**
-getAngleModify(currentRotationMatrix: Array<number>, preRotationMatrix: Array<number>): Promise<Array<number>>
+```js
+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);
+}
+```
-Obtains the angle change between two rotation matrices. This API uses a promise to return the result.
+## sensor.getDeviceAltitude9+
+
+getDeviceAltitude(seaPressure: number, currentPressure: number): Promise<number>
+
+Obtains the altitude at which the device is located based on the sea-level atmospheric pressure and the current atmospheric pressure. This API uses a promise to return the result.
**System capability**: SystemCapability.Sensors.Sensor
**Parameters**
-| Name | Type | Mandatory | Description |
-| --------------------- | ------------------- | ---- | --------- |
-| currentRotationMatrix | Array<number> | Yes | Current rotation matrix.|
-| preRotationMatrix | Array<number> | Yes | Rotation matrix. |
+| Name | Type | Mandatory| Description |
+| --------------- | ------ | ---- | ------------------------------------- |
+| seaPressure | number | Yes | Sea-level atmospheric pressure, in hPa. |
+| currentPressure | number | Yes | Atmospheric pressure at the altitude where the device is located, in hPa.|
**Return value**
-| Type | Description |
-| ---------------------------------- | ------------------ |
-| Promise<Array<number>> | Promise used to return the angle change around the z, x, and y axes.|
+| Type | Description |
+| --------------------- | ------------------------------------ |
+| Promise<number> | Promise used to return the altitude, in meters.|
+
+**Error code**
+
+For details about the following error codes, see [Error Codes of sensor.getDeviceAltitude](../errorcodes/errorcode-sensor.md).
+
+| Error Code ID| Error Message |
+| -------- | ------------------ |
+| 14500101 | Service exception. |
**Example**
- ```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.getDeviceAltitude (0, 200);
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_getDeviceAltitude_Promise success', data);
+ }).catch((err) => {
+ console.error("Operation failed");
})
- ```
-
+} catch (err) {
+ console.error('getDeviceAltitude failed. Error code: ' + err.code + '; message: ' + err.message);
+}
+```
-## sensor.createRotationMatrix
+## sensor.getInclination9+
-createRotationMatrix(rotationVector: Array<number>, callback: AsyncCallback<Array<number>>): void
+getInclination(inclinationMatrix: Array<number>, callback: AsyncCallback<number>): void
-Converts a rotation vector into a rotation matrix. This API uses an asynchronous callback to return the result.
+Obtains the magnetic dip based on the inclination matrix. This API uses an asynchronous callback to return the result.
**System capability**: SystemCapability.Sensors.Sensor
**Parameters**
-| Name | Type | Mandatory | Description |
-| -------------- | ---------------------------------------- | ---- | ------- |
-| rotationVector | Array<number> | Yes | Rotation vector to convert.|
-| callback | AsyncCallback<Array<number>> | Yes | Callback used to return the rotation matrix.|
+| Name | Type | Mandatory| Description |
+| ----------------- | --------------------------- | ---- | ---------------------------- |
+| inclinationMatrix | Array<number> | Yes | Inclination matrix. |
+| callback | AsyncCallback<number> | Yes | Callback used to return the magnetic dip, in radians.|
+
+**Error code**
+
+For details about the following error codes, see [Error Codes of sensor.getInclination](../errorcodes/errorcode-sensor.md).
+
+| Error Code ID| Error Message |
+| -------- | ------------------ |
+| 14500101 | Service exception. |
**Example**
- ```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.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.createRotationMatrix
+## sensor.getInclination9+
-createRotationMatrix(rotationVector: Array<number>): Promise<Array<number>>
+ getInclination(inclinationMatrix: Array<number>): Promise<number>
-Converts a rotation vector into a rotation matrix. This API uses a promise to return the result.
+ Obtains the magnetic dip based on the inclination matrix. This API uses a promise to return the result.
**System capability**: SystemCapability.Sensors.Sensor
**Parameters**
-| Name | Type | Mandatory | Description |
-| -------------- | ------------------- | ---- | ------- |
-| rotationVector | Array<number> | Yes | Rotation vector to convert.|
+| Name | Type | Mandatory| Description |
+| ----------------- | ------------------- | ---- | -------------- |
+| inclinationMatrix | Array<number> | Yes | Inclination matrix.|
**Return value**
-| Type | Description |
-| ---------------------------------- | ------- |
-| Promise<Array<number>> | Promise used to return the rotation matrix.|
+| Type | Description |
+| --------------------- | ---------------------------- |
+| Promise<number> | Promise used to return the magnetic dip, in radians.|
+
+**Error code**
+
+For details about the following error codes, see [Error Codes of sensor.getInclination](../errorcodes/errorcode-sensor.md).
+
+| Error Code ID| Error Message |
+| -------- | ------------------ |
+| 14500101 | Service exception. |
**Example**
- ```js
- const promise = sensor.createRotationMatrix([0.20046076, 0.21907, 0.73978853, 0.60376877]);
+```js
+try {
+ const promise = sensor.getInclination ([1, 0, 0, 0, 1, 0, 0, 0, 1]);
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);
- })
- ```
-
+ 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.createQuaternion
+## sensor.getAngleVariation9+
-createQuaternion(rotationVector: Array<number>, callback: AsyncCallback<Array<number>>): void
+ getAngleVariation(currentRotationMatrix: Array<number>, preRotationMatrix: Array<number>,
+ callback: AsyncCallback): void
-Converts a rotation vector into a quaternion. This API uses an asynchronous callback to return the result.
+Obtains the angle change between two rotation matrices. This API uses an asynchronous callback to return the result.
**System capability**: SystemCapability.Sensors.Sensor
**Parameters**
-| Name | Type | Mandatory | Description |
-| -------------- | ---------------------------------------- | ---- | ------- |
-| rotationVector | Array<number> | Yes | Rotation vector to convert.|
-| callback | AsyncCallback<Array<number>> | Yes | Callback used to return the quaternion. |
+| Name | Type | Mandatory| Description |
+| --------------------- | ---------------------------------------- | ---- | --------------------------------- |
+| currentRotationMatrix | Array<number> | Yes | Current rotation matrix. |
+| preRotationMatrix | Array<number> | Yes | The other rotation matrix. |
+| callback | AsyncCallback<Array<number>> | Yes | Callback used to return the angle change around the z, x, and y axes.|
+
+**Error code**
+
+For details about the following error codes, see [Error Codes of sensor.getAngleVariation](../errorcodes/errorcode-sensor.md).
+
+| Error Code ID| Error Message |
+| -------- | ------------------ |
+| 14500101 | Service exception. |
**Example**
- ```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;
- }
+```js
+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.createQuaternion
+## sensor.getAngleVariation9+
-createQuaternion(rotationVector: Array<number>): Promise<Array<number>>
+getAngleVariation(currentRotationMatrix: Array<number>, preRotationMatrix: Array<number>): Promise
-Converts a rotation vector into a quaternion. This API uses a promise to return the result.
+Obtains the angle change between two rotation matrices. This API uses a promise to return the result.
**System capability**: SystemCapability.Sensors.Sensor
**Parameters**
-| Name | Type | Mandatory | Description |
-| -------------- | ------------------- | ---- | ------- |
-| rotationVector | Array<number> | Yes | Rotation vector to convert.|
+| Name | Type | Mandatory| Description |
+| --------------------- | ------------------- | ---- | ------------------ |
+| currentRotationMatrix | Array<number> | Yes | Current rotation matrix.|
+| preRotationMatrix | Array<number> | Yes | The other rotation matrix. |
**Return value**
-| Type | Description |
-| ---------------------------------- | ------ |
-| Promise<Array<number>> | Promise used to return the quaternion.|
+| Type | Description |
+| ---------------------------------- | --------------------------------- |
+| Promise<Array<number>> | Promise used to return the angle change around the z, x, and y axes.|
+
+**Error code**
+
+For details about the following error codes, see [Error Codes of sensor.getAngleVariation](../errorcodes/errorcode-sensor.md).
+
+| Error Code ID| Error Message |
+| -------- | ------------------ |
+| 14500101 | Service exception. |
**Example**
- ```js
- const promise = sensor.createQuaternion([0.20046076, 0.21907, 0.73978853, 0.60376877]);
+```js
+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) => {
- console.info('createQuaternion_promise successed');
for (var i=0; i < data.length; i++) {
- console.info("data[" + i + "]: " + data[i]);
+ console.info('data[' + i + ']: ' + data[i]);
}
- }).catch((err) => {
- console.info('promise failed');
+ }).catch((reason) => {
+ console.info('promise::catch ', reason);
})
- ```
-
+} catch (err) {
+ console.error('getAngleVariation failed. Error code: ' + err.code + '; message: ' + err.message);
+}
+```
-## sensor.getDirection
+## sensor.getRotationMatrix9+
-getDirection(rotationMatrix: Array<number>, callback: AsyncCallback<Array<number>>): void
+getRotationMatrix(rotationVector: Array<number>, callback: AsyncCallback): void
-Obtains the device direction based on the rotation matrix. This API uses an asynchronous callback to return the result.
+Obtains the rotation matrix from a rotation vector. This API uses an asynchronous callback to return the result.
**System capability**: SystemCapability.Sensors.Sensor
**Parameters**
-| Name | Type | Mandatory | Description |
-| -------------- | ---------------------------------------- | ---- | ------------------ |
-| rotationMatrix | Array<number> | Yes | Rotation matrix. |
-| callback | AsyncCallback<Array<number>> | Yes | Callback used to return the rotation angle around the z, x, and y axes.|
+| Name | Type | Mandatory| Description |
+| -------------- | ---------------------------------------- | ---- | -------------- |
+| rotationVector | Array<number> | Yes | Rotation vector.|
+| callback | AsyncCallback<Array<number>> | Yes | Callback used to return the rotation matrix.|
+
+**Error code**
+
+For details about the following error codes, see [Error Codes of sensor.getRotationMatrix](../errorcodes/errorcode-sensor.md).
+
+| Error Code ID| Error Message |
+| -------- | ------------------ |
+| 14500101 | Service exception. |
**Example**
- ```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
+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.getDirection
+## sensor.getRotationMatrix9+
-getDirection(rotationMatrix: Array<number>): Promise<Array<number>>
+getRotationMatrix(rotationVector: Array<number>): Promise
-Obtains the device direction based on the rotation matrix. This API uses a promise to return the result.
+Obtains the rotation matrix from a rotation vector. This API uses a promise to return the result.
**System capability**: SystemCapability.Sensors.Sensor
**Parameters**
-| Name | Type | Mandatory | Description |
-| -------------- | ------------------- | ---- | ------- |
-| rotationMatrix | Array<number> | Yes | Rotation matrix.|
+| Name | Type | Mandatory| Description |
+| -------------- | ------------------- | ---- | -------------- |
+| rotationVector | Array<number> | Yes | Rotation vector.|
**Return value**
-| Type | Description |
-| ---------------------------------- | ------------------ |
-| Promise<Array<number>> | Promise used to return the rotation angle around the z, x, and y axes.|
+| Type | Description |
+| ---------------------------------- | -------------- |
+| Promise<Array<number>> | Promise used to return the rotation matrix.|
+
+**Error code**
+
+For details about the following error codes, see [Error Codes of sensor.getRotationMatrix](../errorcodes/errorcode-sensor.md).
+
+| Error Code ID| Error Message |
+| -------- | ------------------ |
+| 14500101 | Service exception. |
**Example**
- ```js
- const promise = sensor.getDirection([1, 0, 0, 0, 1, 0, 0, 0, 1]);
+```js
+try {
+ const promise = sensor.getRotationMatrix([0.20046076, 0.21907, 0.73978853, 0.60376877]);
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]);
+ for (var i=0; i < data.length; i++) {
+ console.info('data[' + i + ']: ' + data[i]);
}
- }).catch((err) => {
- console.info('promise failed');
+ }).catch((reason) => {
+ console.info('promise::catch ', reason);
})
- ```
+} catch (err) {
+ console.error('getRotationMatrix failed. Error code: ' + err.code + '; message: ' + err.message);
+}
+```
+## sensor.transformRotationMatrix9+
-## sensor.createRotationMatrix
+transformRotationMatrix(inRotationVector: Array<number>, coordinates: CoordinatesOptions,
+ callback: AsyncCallback): void
-createRotationMatrix(gravity: Array<number>, geomagnetic: Array<number>, callback: AsyncCallback<RotationMatrixResponse>): void
+Rotates a rotation vector so that it can represent the coordinate system in different ways. This API uses an asynchronous callback to return the result.
-Creates a rotation matrix based on the gravity vector and geomagnetic vector. This API uses an asynchronous callback to return the result.
+**System capability**: SystemCapability.Sensors.Sensor
+
+**Parameters**
+
+| Name | Type | Mandatory| Description |
+| ---------------- | ----------------------------------------- | ---- | ---------------------- |
+| inRotationVector | Array<number> | Yes | Rotation vector to rotate. |
+| coordinates | [CoordinatesOptions](#coordinatesoptions) | Yes | Direction of the coordinate system. |
+| callback | AsyncCallback<Array<number>> | Yes | Callback used to return the rotation vector after being rotated.|
+
+**Error code**
+
+For details about the following error codes, see [Error Codes of sensor.transformRotationMatrix](../errorcodes/errorcode-sensor.md).
+
+| Error Code ID| Error Message |
+| -------- | ------------------ |
+| 14500101 | Service exception. |
+
+**Example**
+
+```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.transformRotationMatrix9+
+
+transformRotationMatrix(inRotationVector: Array<number>, coordinates: CoordinatesOptions): Promise
+
+Rotates a rotation vector so that it can represent the coordinate system in different ways. This API uses a promise to return the result.
+
+**System capability**: SystemCapability.Sensors.Sensor
+
+**Parameters**
+
+| Name | Type | Mandatory| Description |
+| ---------------- | ----------------------------------------- | ---- | ---------------- |
+| inRotationVector | Array<number> | Yes | Rotation vector to rotate. |
+| coordinates | [CoordinatesOptions](#coordinatesoptions) | Yes | Direction of the coordinate system.|
+
+**Return value**
+
+| Type | Description |
+| ---------------------------------- | ---------------------- |
+| Promise<Array<number>> | Promise used to return the rotation vector after being rotated.|
+
+**Error code**
+
+For details about the following error codes, see [Error Codes of sensor.transformRotationMatrix](../errorcodes/errorcode-sensor.md).
+
+| Error Code ID| Error Message |
+| -------- | ------------------ |
+| 14500101 | Service exception. |
+
+**Example**
+
+```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
+
+Obtains the quaternion from a rotation vector. This API uses an asynchronous callback to return the result.
**System capability**: SystemCapability.Sensors.Sensor
**Parameters**
-| Name | Type | Mandatory | Description |
-| ----------- | ---------------------------------------- | ---- | ------- |
-| gravity | Array<number> | Yes | Gravity vector.|
-| geomagnetic | Array<number> | Yes | Geomagnetic vector.|
-| callback | AsyncCallback<[RotationMatrixResponse](#rotationmatrixresponse)> | Yes | Callback used to return the rotation matrix.|
+| Name | Type | Mandatory| Description |
+| -------------- | ---------------------------------------- | ---- | -------------- |
+| rotationVector | Array<number> | Yes | Rotation vector.|
+| callback | AsyncCallback<Array<number>> | Yes | Callback used to return the quaternion. |
+
+**Error code**
+
+For details about the following error codes, see [Error Codes of sensor.getQuaternion](../errorcodes/errorcode-sensor.md).
+
+| Error Code ID| Error Message |
+| -------- | ------------------ |
+| 14500101 | Service exception. |
**Example**
- ```js
- sensor.createRotationMatrix([-0.27775216, 0.5351276, 9.788099], [210.87253, -78.6096, -111.44444], function(err, data) {
- if (err) {
- console.error('SensorJsAPI--->Failed to register data, error code is: ' + err.code + ', message: ' +
- err.message);
- return;
+```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]);
}
- for (var i=0; i < data.rotation.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
+
+Obtains the quaternion from a rotation vector. This API uses a promise to return the result.
+
+**System capability**: SystemCapability.Sensors.Sensor
+
+**Parameters**
+
+| Name | Type | Mandatory| Description |
+| -------------- | ------------------- | ---- | -------------- |
+| rotationVector | Array<number> | Yes | Rotation vector.|
+
+**Return value**
+
+| Type | Description |
+| ---------------------------------- | ------------ |
+| Promise<Array<number>> | Callback used to return the quaternion.|
+
+**Error code**
+
+For details about the following error codes, see [Error Codes of sensor.getQuaternion](../errorcodes/errorcode-sensor.md).
+
+| Error Code ID| Error Message |
+| -------- | ------------------ |
+| 14500101 | Service exception. |
+
+**Example**
+
+```js
+try {
+ const promise = sensor.getQuaternion([0.20046076, 0.21907, 0.73978853, 0.60376877]);
+ promise.then((data) => {
+ console.info('getQuaternionn_promise successed');
+ for (var i=0; i < data.length; i++) {
+ console.info('data[' + i + ']: ' + data[i]);
+ }
+ }).catch((err) => {
+ console.info('promise failed');
+ })
+} catch (err) {
+ console.error('getQuaternion failed. Error code: ' + err.code + '; message: ' + err.message);
+}
+```
+
+## sensor.getOrientation9+
+
+getOrientation(rotationMatrix: Array<number>, callback: AsyncCallback): void
+
+Obtains the device direction based on the rotation matrix. This API uses an asynchronous callback to return the result.
+
+**System capability**: SystemCapability.Sensors.Sensor
+
+**Parameters**
+
+| Name | Type | Mandatory| Description |
+| -------------- | ---------------------------------------- | ---- | --------------------------------- |
+| rotationMatrix | Array<number> | Yes | Rotation matrix. |
+| callback | AsyncCallback<Array<number>> | Yes | Callback used to return the rotation angle around the z, x, and y axes.|
+
+**Error code**
+
+For details about the following error codes, see [Error Codes of sensor.getOrientation](../errorcodes/errorcode-sensor.md).
+
+| Error Code ID| Error Message |
+| -------- | ------------------ |
+| 14500101 | Service exception. |
+
+**Example**
+
+```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]);
}
})
- ```
+} catch (err) {
+ console.error('getOrientation failed. Error code: ' + err.code + '; message: ' + err.message);
+}
+```
+## sensor.getOrientation9+
-## sensor.createRotationMatrix
+getOrientation(rotationMatrix: Array<number>): Promise
-createRotationMatrix(gravity: Array<number>, geomagnetic: Array<number>,): Promise<RotationMatrixResponse>
+Obtains the device direction based on the rotation matrix. This API uses a promise to return the result.
-Creates a rotation matrix based on the gravity vector and geomagnetic vector. This API uses a promise to return the result.
+**System capability**: SystemCapability.Sensors.Sensor
+
+**Parameters**
+
+| Name | Type | Mandatory| Description |
+| -------------- | ------------------- | ---- | -------------- |
+| rotationMatrix | Array<number> | Yes | Rotation matrix.|
+
+**Return value**
+
+| Type | Description |
+| ---------------------------------- | --------------------------------- |
+| Promise<Array<number>> | Promise used to return the rotation angle around the z, x, and y axes.|
+
+**Error code**
+
+For details about the following error codes, see [Error Codes of sensor.getOrientation](../errorcodes/errorcode-sensor.md).
+
+| Error Code ID| Error Message |
+| -------- | ------------------ |
+| 14500101 | Service exception. |
+
+**Example**
+
+```js
+try {
+ const promise = sensor.getOrientation([1, 0, 0, 0, 1, 0, 0, 0, 1]);
+ promise.then((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.info('promise failed');
+ })
+} catch (err) {
+ console.error('getOrientation failed. Error code: ' + err.code + '; message: ' + err.message);
+}
+```
+
+## sensor.getRotationMatrix9+
+
+getRotationMatrix(gravity: Array<number>, geomagnetic: Array<number>, callback: AsyncCallback<RotationMatrixResponse>): void
+
+Obtains the rotation matrix based on a gravity vector and geomagnetic vector. This API uses an asynchronous callback to return the result.
+
+**System capability**: SystemCapability.Sensors.Sensor
+
+**Parameters**
+
+| Name | Type | Mandatory| Description |
+| ----------- | ------------------------------------------------------------ | ---- | -------------- |
+| gravity | Array<number> | Yes | Gravity vector.|
+| geomagnetic | Array<number> | Yes | Geomagnetic vector.|
+| callback | AsyncCallback<[RotationMatrixResponse](#rotationmatrixresponse)> | Yes | Callback used to return the rotation matrix.|
+
+**Error code**
+
+For details about the following error codes, see [Error Codes of sensor.getRotationMatrix](../errorcodes/errorcode-sensor.md).
+
+| Error Code ID| Error Message |
+| -------- | ------------------ |
+| 14500101 | Service exception. |
+
+**Example**
+
+```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.getRotationMatrix9+
+
+getRotationMatrix(gravity: Array<number>, geomagnetic: Array<number>,): Promise<RotationMatrixResponse>
+
+Obtains the rotation matrix based on a gravity vector and geomagnetic vector. This API uses a promise to return the result.
**System capability**: SystemCapability.Sensors.Sensor
**Parameters**
-| Name | Type | Mandatory | Description |
-| ----------- | ------------------- | ---- | ------- |
-| gravity | Array<number> | Yes | Gravity vector.|
-| geomagnetic | Array<number> | Yes | Geomagnetic vector.|
+| Name | Type | Mandatory| Description |
+| ----------- | ------------------- | ---- | -------------- |
+| gravity | Array<number> | Yes | Gravity vector.|
+| geomagnetic | Array<number> | Yes | Geomagnetic vector.|
**Return value**
-| Type | Description |
-| ---------------------------------------- | ------- |
+| Type | Description |
+| ------------------------------------------------------------ | -------------- |
| Promise<[RotationMatrixResponse](#rotationmatrixresponse)> | Promise used to return the rotation matrix.|
+**Error code**
+
+For details about the following error codes, see [Error Codes of sensor.getRotationMatrix](../errorcodes/errorcode-sensor.md).
+
+| Error Code ID| Error Message |
+| -------- | ------------------ |
+| 14500101 | Service exception. |
+
**Example**
- ```js
- const promise = sensor.createRotationMatrix([-0.27775216, 0.5351276, 9.788099], [210.87253, -78.6096, -111.44444]);
+```js
+try {
+ const promise = sensor.getRotationMatrix ([-0.27775216, 0.5351276, 9.788099], [210.87253, -78.6096, -111.44444]);
promise.then((data) => {
- console.info('createRotationMatrix_promise successed');
- for (var i=0; i < data.rotation.length; i++) {
- console.info("data[" + i + "]: " + data[i]);
- }
+ 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.getSensorLists9+
+## sensor.getSensorList9+
- getSensorLists(callback: AsyncCallback): void
+ getSensorList(callback: AsyncCallback): void
Obtains information about all sensors on the device. This API uses an asynchronous callback to return the result.
@@ -2394,28 +3020,36 @@ Obtains information about all sensors on the device. This API uses an asynchrono
**Parameters**
-| Name | Type | Mandatory| Description |
-| -------- | --------------------------------------------- | ---- | ---------------- |
-| callback | AsyncCallback | Yes | Callback used to return the sensor list.|
+| Name | Type | Mandatory| Description |
+| -------- | ---------------------------------------------- | ---- | ---------------- |
+| callback | AsyncCallback | Yes | Callback used to return the sensor list.|
+
+**Error code**
+
+For details about the following error codes, see [Error Codes of sensor.getSensorList](../errorcodes/errorcode-sensor.md).
+
+| Error Code ID| Error Message |
+| -------- | ------------------ |
+| 14500101 | Service exception. |
**Example**
```js
-sensor.getSensorList((error, data) => {
- if (error) {
- console.error('getSensorList failed');
- } else {
- console.info("getSensorList callback in" + data.length);
+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.getSensorLists9+
+## sensor.getSensorList9+
- getSensorLists(): Promise< Array<Sensor>>
+ getSensorList(): Promise< Array<Sensor>>
Obtains information about all sensors on the device. This API uses a promise to return the result.
@@ -2423,26 +3057,38 @@ Obtains information about all sensors on the device. This API uses a promise to
**Return value**
-| Name | Type | Mandatory| Description |
-| ------- | --------------------------------------- | ---- | ---------------- |
-| promise | Promise | Yes | Promise used to return the sensor list.|
+| Name | Type | Mandatory| Description |
+| ------- | ---------------------------------------- | ---- | ---------------- |
+| promise | Promise | Yes | Promise used to return the sensor list.|
+
+**Error code**
+
+For details about the following error codes, see [Error Codes of sensor.getSensorList](../errorcodes/errorcode-sensor.md).
+
+| Error Code ID| Error Message |
+| -------- | ------------------ |
+| 14500101 | Service exception. |
**Example**
```js
-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');
-});
+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: SensorType, callback: AsyncCallback<sensor>): void
+getSingleSensor(type: SensorId, callback: AsyncCallback<Sensor>): void
Obtains information about the sensor of a specific type. This API uses an asynchronous callback to return the result.
@@ -2450,26 +3096,34 @@ Obtains information about the sensor of a specific type. This API uses an asynch
**Parameters**
-| Name | Type | Mandatory| Description |
-| -------- | -------------------------------------- | ---- | ---------------- |
-| type | SensorType | Yes | Sensor type. |
-| callback | AsyncCallback<[Sensor](#sensor)> | Yes | Callback used to return the sensor information.|
+| Name | Type | Mandatory| Description |
+| -------- | --------------------------------------- | ---- | ---------------- |
+| type | [SensorId](#sensorid9) | Yes | Sensor type. |
+| callback | AsyncCallback<[Sensor](#sensor9)> | Yes | Callback used to return the sensor information.|
+
+**Error code**
+
+For details about the following error codes, see [Error Codes of sensor.getSingleSensor](../errorcodes/errorcode-sensor.md).
+
+| Error Code ID| Error Message |
+| -------- | ------------------ |
+| 14500101 | Service exception. |
**Example**
```js
- sensor.getSingleSensor(sensor.SensorType.SENSOR_TYPE_ID_ACCELEROMETER, (error, data) => {
- if (error) {
- console.error('getSingleSensor failed');
- } else {
- console.info("getSingleSensor " + JSON.stringify(data));
- }
-});
+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: SensorType,): Promise<Sensor>
+ getSingleSensor(type: SensorId): Promise<Sensor>
Obtains information about the sensor of a specific type. This API uses a promise to return the result.
@@ -2477,58 +3131,98 @@ Obtains information about the sensor of a specific type. This API uses a promise
**Parameters**
-| Name| Type | Mandatory| Description |
-| ------ | ---------- | ---- | ------------ |
-| type | SensorType | Yes | Sensor type.|
+| Name| Type | Mandatory| Description |
+| ------ | ---------------------- | ---- | ------------ |
+| type | [SensorId](#sensorid9) | Yes | Sensor type.|
**Return value**
-| Name | Type | Mandatory| Description |
-| ------- | -------------------------------- | ---- | ---------------- |
-| promise | Promise<[Sensor](#sensor)> | Yes | Promise used to return the sensor information.|
+| Name | Type | Mandatory| Description |
+| ------- | --------------------------------- | ---- | ---------------- |
+| promise | Promise<[Sensor](#sensor9)> | Yes | Promise used to return the sensor information.|
+
+**Error code**
+
+For details about the following error codes, see [Error Codes of sensor.getSingleSensor](../errorcodes/errorcode-sensor.md).
+
+| Error Code ID| Error Message |
+| -------- | ------------------ |
+| 14500101 | Service exception. |
**Example**
```js
-sensor.getSingleSensor(sensor.SensorType.SENSOR_TYPE_ID_ACCELEROMETER).then((data) => {
- console.info("getSingleSensor " + JSON.stringify(data));
-}, (error)=>{
- console.error('getSingleSensor failed');
-});
+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);
+}
```
-## SensorType
+## SensorId9+
+
+Enumerates the sensor types.
+
+**System capability**: SystemCapability.Sensors.Sensor
+
+| Name | Default Value| Description |
+| --------------------------- | ------ | ---------------------- |
+| ACCELEROMETER | 1 | Acceleration sensor. |
+| GYROSCOPE | 2 | Gyroscope sensor. |
+| AMBIENT_LIGHT | 5 | Ambient light sensor. |
+| MAGNETIC_FIELD | 6 | Magnetic field sensor. |
+| BAROMETER | 8 | Barometer sensor. |
+| HALL | 10 | Hall effect sensor. |
+| PROXIMITY | 12 | Proximity sensor. |
+| HUMIDITY | 13 | Humidity sensor. |
+| ORIENTATION | 256 | Orientation sensor. |
+| GRAVITY | 257 | Gravity sensor. |
+| LINEAR_ACCELEROMETER | 258 | Linear acceleration sensor. |
+| ROTATION_VECTOR | 259 | Rotation vector sensor. |
+| AMBIENT_TEMPERATURE | 260 | Ambient temperature sensor. |
+| MAGNETIC_FIELD_UNCALIBRATED | 261 | Uncalibrated magnetic field sensor. |
+| GYROSCOPE_UNCALIBRATED | 263 | Uncalibrated gyroscope sensor. |
+| SIGNIFICANT_MOTION | 264 | Significant motion sensor. |
+| PEDOMETER_DETECTION | 265 | Pedometer detection sensor. |
+| PEDOMETER | 266 | Pedometer sensor. |
+| HEART_RATE | 278 | Heart rate sensor. |
+| WEAR_DETECTION | 280 | Wear detection sensor. |
+| ACCELEROMETER_UNCALIBRATED | 281 | Uncalibrated acceleration sensor.|
+
+## SensorType(deprecated)
Enumerates the sensor types.
**System capability**: SystemCapability.Sensors.Sensor
-| Name | Default Value | Description |
-| ---------------------------------------- | ---- | ----------- |
-| SENSOR_TYPE_ID_ACCELEROMETER | 1 | Acceleration sensor. |
-| SENSOR_TYPE_ID_GYROSCOPE | 2 | Gyroscope sensor. |
-| SENSOR_TYPE_ID_AMBIENT_LIGHT | 5 | Ambient light sensor. |
-| SENSOR_TYPE_ID_MAGNETIC_FIELD | 6 | Magnetic field sensor. |
-| SENSOR_TYPE_ID_BAROMETER | 8 | Barometer sensor. |
-| SENSOR_TYPE_ID_HALL | 10 | Hall effect sensor. |
-| SENSOR_TYPE_ID_PROXIMITY | 12 | Proximity sensor. |
-| SENSOR_TYPE_ID_HUMIDITY | 13 | Humidity sensor. |
-| SENSOR_TYPE_ID_ORIENTATION | 256 | Orientation sensor. |
-| SENSOR_TYPE_ID_GRAVITY | 257 | Gravity sensor. |
-| SENSOR_TYPE_ID_LINEAR_ACCELERATIONdeprecated | 258 | Linear acceleration sensor. |
-| SENSOR_TYPE_ID_LINEAR_ACCELEROMETER | 258 | Linear acceleration sensor. |
-| SENSOR_TYPE_ID_ROTATION_VECTOR | 259 | Rotation vector sensor. |
-| SENSOR_TYPE_ID_AMBIENT_TEMPERATURE | 260 | Ambient temperature sensor. |
-| SENSOR_TYPE_ID_MAGNETIC_FIELD_UNCALIBRATED | 261 | Uncalibrated magnetic field sensor. |
-| SENSOR_TYPE_ID_GYROSCOPE_UNCALIBRATED | 263 | Uncalibrated gyroscope sensor. |
-| SENSOR_TYPE_ID_SIGNIFICANT_MOTION | 264 | Significant motion sensor. |
-| SENSOR_TYPE_ID_PEDOMETER_DETECTION | 265 | Pedometer detection sensor. |
-| SENSOR_TYPE_ID_PEDOMETER | 266 | Pedometer sensor. |
-| SENSOR_TYPE_ID_HEART_RATEdeprecated | 278 | Heart rate sensor. |
-| SENSOR_TYPE_ID_HEART_BEAT_RATE | 278 | Heart rate sensor. |
-| SENSOR_TYPE_ID_WEAR_DETECTION | 280 | Wear detection sensor. |
-| SENSOR_TYPE_ID_ACCELEROMETER_UNCALIBRATED | 281 | Uncalibrated acceleration sensor.|
+| Name | Default Value| Description |
+| ------------------------------------------ | ------ | ---------------------- |
+| SENSOR_TYPE_ID_ACCELEROMETER | 1 | Acceleration sensor. |
+| SENSOR_TYPE_ID_GYROSCOPE | 2 | Gyroscope sensor. |
+| SENSOR_TYPE_ID_AMBIENT_LIGHT | 5 | Ambient light sensor. |
+| SENSOR_TYPE_ID_MAGNETIC_FIELD | 6 | Magnetic field sensor. |
+| SENSOR_TYPE_ID_BAROMETER | 8 | Barometer sensor. |
+| SENSOR_TYPE_ID_HALL | 10 | Hall effect sensor. |
+| SENSOR_TYPE_ID_PROXIMITY | 12 | Proximity sensor. |
+| SENSOR_TYPE_ID_HUMIDITY | 13 | Humidity sensor. |
+| SENSOR_TYPE_ID_ORIENTATION | 256 | Orientation sensor. |
+| SENSOR_TYPE_ID_GRAVITY | 257 | Gravity sensor. |
+| SENSOR_TYPE_ID_LINEAR_ACCELERATION | 258 | Linear acceleration sensor. |
+| SENSOR_TYPE_ID_ROTATION_VECTOR | 259 | Rotation vector sensor. |
+| SENSOR_TYPE_ID_AMBIENT_TEMPERATURE | 260 | Ambient temperature sensor. |
+| SENSOR_TYPE_ID_MAGNETIC_FIELD_UNCALIBRATED | 261 | Uncalibrated magnetic field sensor. |
+| SENSOR_TYPE_ID_GYROSCOPE_UNCALIBRATED | 263 | Uncalibrated gyroscope sensor. |
+| SENSOR_TYPE_ID_SIGNIFICANT_MOTION | 264 | Significant motion sensor. |
+| SENSOR_TYPE_ID_PEDOMETER_DETECTION | 265 | Pedometer detection sensor. |
+| SENSOR_TYPE_ID_PEDOMETER | 266 | Pedometer sensor. |
+| SENSOR_TYPE_ID_HEART_RATE | 278 | Heart rate sensor. |
+| SENSOR_TYPE_ID_WEAR_DETECTION | 280 | Wear detection sensor. |
+| SENSOR_TYPE_ID_ACCELEROMETER_UNCALIBRATED | 281 | Uncalibrated acceleration sensor.|
## Response
@@ -2541,7 +3235,7 @@ Describes the timestamp of the sensor data.
| --------- | -------- | ---- | ---- | ------------------------ |
| timestamp | number | Yes | Yes | Timestamp when the sensor reports data.|
-## Sensor
+## Sensor9+
Describes the sensor information.
@@ -2553,8 +3247,10 @@ Describes the sensor information.
| venderName | string | Vendor of the sensor. |
| firmwareVersion | string | Firmware version of the sensor. |
| hardwareVersion | string | Hardware version of the sensor. |
-| sensorTypeId | number | Sensor type ID. |
+| sensorId | number | Sensor type ID. |
| maxRange | number | Maximum measurement range of the sensor.|
+| minSamplePeriod | number | Minimum sampling period. |
+| maxSamplePeriod | number | Maximum sampling period. |
| precision | number | Precision of the sensor. |
| power | number | Power supply of the sensor. |
@@ -2565,11 +3261,11 @@ Describes the acceleration sensor data. It extends from [Response](#response).
**System capability**: SystemCapability.Sensors.Sensor
-| Name | Type | Readable | Writable | Description |
-| ---- | ------ | ---- | ---- | ---------------------- |
-| x | number | Yes | Yes | Acceleration along the x-axis of the device, in m/s2.|
-| y | number | Yes | Yes | Acceleration along the y-axis of the device, in m/s2.|
-| z | number | Yes | Yes | Acceleration along the z-axis of the device, in m/s2.|
+| Name| Type| Readable| Writable| Description |
+| ---- | -------- | ---- | ---- | ------------------------------------ |
+| x | number | Yes | Yes | Acceleration along the x-axis of the device, in m/s2.|
+| y | number | Yes | Yes | Acceleration along the y-axis of the device, in m/s2.|
+| z | number | Yes | Yes | Acceleration along the z-axis of the device, in m/s2.|
## LinearAccelerometerResponse
@@ -2579,11 +3275,11 @@ Describes the linear acceleration sensor data. It extends from [Response](#respo
**System capability**: SystemCapability.Sensors.Sensor
-| Name | Type | Readable | Writable | Description |
-| ---- | ------ | ---- | ---- | ------------------------ |
-| x | number | Yes | Yes | Linear acceleration along the x-axis of the device, in m/s2.|
-| y | number | Yes | Yes | Linear acceleration along the y-axis of the device, in m/s2.|
-| z | number | Yes | Yes | Linear acceleration along the z-axis of the device, in m/s2.|
+| Name| Type| Readable| Writable| Description |
+| ---- | -------- | ---- | ---- | ---------------------------------------- |
+| x | number | Yes | Yes | Linear acceleration along the x-axis of the device, in m/s2.|
+| y | number | Yes | Yes | Linear acceleration along the y-axis of the device, in m/s2.|
+| z | number | Yes | Yes | Linear acceleration along the z-axis of the device, in m/s2.|
## AccelerometerUncalibratedResponse
@@ -2593,14 +3289,14 @@ Describes the uncalibrated acceleration sensor data. It extends from [Response](
**System capability**: SystemCapability.Sensors.Sensor
-| Name | Type | Readable | Writable | Description |
-| ----- | ------ | ---- | ---- | ---------------------------- |
-| x | number | Yes | Yes | Uncalibrated acceleration along the x-axis of the device, in m/s2. |
-| y | number | Yes | Yes | Uncalibrated acceleration along the y-axis of the device, in m/s2. |
-| z | number | Yes | Yes | Uncalibrated acceleration along the z-axis of the device, in m/s2. |
-| biasX | number | Yes | Yes | Uncalibrated acceleration bias along the x-axis of the device, in m/s2. |
-| biasY | number | Yes | Yes | Uncalibrated acceleration bias along the y-axis of the device, in m/s2.|
-| biasZ | number | Yes | Yes | Uncalibrated acceleration bias along the z-axis of the device, in m/s2. |
+| Name | Type| Readable| Writable| Description |
+| ----- | -------- | ---- | ---- | ------------------------------------------------ |
+| x | number | Yes | Yes | Uncalibrated acceleration along the x-axis of the device, in m/s2. |
+| y | number | Yes | Yes | Uncalibrated acceleration along the y-axis of the device, in m/s2. |
+| z | number | Yes | Yes | Uncalibrated acceleration along the z-axis of the device, in m/s2. |
+| biasX | number | Yes | Yes | Uncalibrated acceleration bias along the x-axis of the device, in m/s2. |
+| biasY | number | Yes | Yes | Uncalibrated acceleration bias along the y-axis of the device, in m/s2.|
+| biasZ | number | Yes | Yes | Uncalibrated acceleration bias along the z-axis of the device, in m/s2. |
## GravityResponse
@@ -2610,11 +3306,11 @@ Describes the gravity sensor data. It extends from [Response](#response).
**System capability**: SystemCapability.Sensors.Sensor
-| Name | Type | Readable | Writable | Description |
-| ---- | ------ | ---- | ---- | ------------------------ |
-| x | number | Yes | Yes | Gravitational acceleration along the x-axis of the device, in m/s2.|
-| y | number | Yes | Yes | Gravitational acceleration along the y-axis of the device, in m/s2.|
-| z | number | Yes | Yes | Gravitational acceleration along the z-axis of the device, in m/s2.|
+| Name| Type| Readable| Writable| Description |
+| ---- | -------- | ---- | ---- | ---------------------------------------- |
+| x | number | Yes | Yes | Gravitational acceleration along the x-axis of the device, in m/s2.|
+| y | number | Yes | Yes | Gravitational acceleration along the y-axis of the device, in m/s2.|
+| z | number | Yes | Yes | Gravitational acceleration along the z-axis of the device, in m/s2.|
## OrientationResponse
@@ -2624,11 +3320,11 @@ Describes the orientation sensor data. It extends from [Response](#response).
**System capability**: SystemCapability.Sensors.Sensor
-| Name | Type | Readable | Writable | Description |
-| ----- | ------ | ---- | ---- | ----------------- |
-| alpha | number | Yes | Yes | Rotation angle of the device around the z-axis, in degrees.|
-| beta | number | Yes | Yes | Rotation angle of the device around the x-axis, in degrees.|
-| gamma | number | Yes | Yes | Rotation angle of the device around the y-axis, in degrees.|
+| Name | Type| Readable| Writable| Description |
+| ----- | -------- | ---- | ---- | --------------------------------- |
+| alpha | number | Yes | Yes | Rotation angle of the device around the z-axis, in degrees.|
+| beta | number | Yes | Yes | Rotation angle of the device around the x-axis, in degrees.|
+| gamma | number | Yes | Yes | Rotation angle of the device around the y-axis, in degrees.|
## RotationVectorResponse
@@ -2638,12 +3334,12 @@ Describes the rotation vector sensor data. It extends from [Response](#response)
**System capability**: SystemCapability.Sensors.Sensor
-| Name | Type | Readable | Writable | Description |
-| ---- | ------ | ---- | ---- | --------- |
-| x | number | Yes | Yes | X-component of the rotation vector.|
-| y | number | Yes | Yes | Y-component of the rotation vector.|
-| z | number | Yes | Yes | Z-component of the rotation vector.|
-| w | number | Yes | Yes | Scalar. |
+| Name| Type| Readable| Writable| Description |
+| ---- | -------- | ---- | ---- | ----------------- |
+| x | number | Yes | Yes | X-component of the rotation vector.|
+| y | number | Yes | Yes | Y-component of the rotation vector.|
+| z | number | Yes | Yes | Z-component of the rotation vector.|
+| w | number | Yes | Yes | Scalar. |
## GyroscopeResponse
@@ -2653,11 +3349,11 @@ Describes the gyroscope sensor data. It extends from [Response](#response).
**System capability**: SystemCapability.Sensors.Sensor
-| Name | Type | Readable | Writable | Description |
-| ---- | ------ | ---- | ---- | ------------------- |
-| x | number | Yes | Yes | Angular velocity of rotation around the x-axis of the device, in rad/s.|
-| y | number | Yes | Yes | Angular velocity of rotation around the y-axis of the device, in rad/s.|
-| z | number | Yes | Yes | Angular velocity of rotation around the z-axis of the device, in rad/s.|
+| Name| Type| Readable| Writable| Description |
+| ---- | -------- | ---- | ---- | -------------------------------- |
+| x | number | Yes | Yes | Angular velocity of rotation around the x-axis of the device, in rad/s.|
+| y | number | Yes | Yes | Angular velocity of rotation around the y-axis of the device, in rad/s.|
+| z | number | Yes | Yes | Angular velocity of rotation around the z-axis of the device, in rad/s.|
## GyroscopeUncalibratedResponse
@@ -2667,14 +3363,14 @@ Describes the uncalibrated gyroscope sensor data. It extends from [Response](#re
**System capability**: SystemCapability.Sensors.Sensor
-| Name | Type | Readable | Writable | Description |
-| ----- | ------ | ---- | ---- | ------------------------ |
-| x | number | Yes | Yes | Uncalibrated angular velocity of rotation around the x-axis of the device, in rad/s. |
-| y | number | Yes | Yes | Uncalibrated angular velocity of rotation around the y-axis of the device, in rad/s. |
-| z | number | Yes | Yes | Uncalibrated angular velocity of rotation around the z-axis of the device, in rad/s. |
-| biasX | number | Yes | Yes | Uncalibrated angular velocity bias of rotation around the x-axis of the device, in rad/s.|
-| biasY | number | Yes | Yes | Uncalibrated angular velocity bias of rotation around the y-axis of the device, in rad/s.|
-| biasZ | number | Yes | Yes | Uncalibrated angular velocity bias of rotation around the z-axis of the device, in rad/s.|
+| Name | Type| Readable| Writable| Description |
+| ----- | -------- | ---- | ---- | ------------------------------------------ |
+| x | number | Yes | Yes | Uncalibrated angular velocity of rotation around the x-axis of the device, in rad/s. |
+| y | number | Yes | Yes | Uncalibrated angular velocity of rotation around the y-axis of the device, in rad/s. |
+| z | number | Yes | Yes | Uncalibrated angular velocity of rotation around the z-axis of the device, in rad/s. |
+| biasX | number | Yes | Yes | Uncalibrated angular velocity bias of rotation around the x-axis of the device, in rad/s.|
+| biasY | number | Yes | Yes | Uncalibrated angular velocity bias of rotation around the y-axis of the device, in rad/s.|
+| biasZ | number | Yes | Yes | Uncalibrated angular velocity bias of rotation around the z-axis of the device, in rad/s.|
## SignificantMotionResponse
@@ -2684,9 +3380,9 @@ Describes the significant motion sensor data. It extends from [Response](#respon
**System capability**: SystemCapability.Sensors.Sensor
-| Name | Type | Readable | Writable | Description |
-| ------ | ------ | ---- | ---- | ---------------------------------------- |
-| scalar | number | Yes | Yes | Intensity of a motion. This parameter specifies whether a device has a significant motion on three physical axes (X, Y, and Z). The value **0** means that the device does not have a significant motion, and **1** means the opposite.|
+| Name | Type| Readable| Writable| Description |
+| ------ | -------- | ---- | ---- | ------------------------------------------------------------ |
+| scalar | number | Yes | Yes | Intensity of a motion. This parameter specifies whether a device has a significant motion on three physical axes (X, Y, and Z). The value **0** means that the device does not have a significant motion, and **1** means the opposite.|
## ProximityResponse
@@ -2696,9 +3392,9 @@ Describes the proximity sensor data. It extends from [Response](#response).
**System capability**: SystemCapability.Sensors.Sensor
-| Name | Type | Readable | Writable | Description |
-| -------- | ------ | ---- | ---- | ---------------------------- |
-| distance | number | Yes | Yes | Proximity between the visible object and the device monitor. The value **0** means the two are close to each other, and **1** means that they are far away from each other.|
+| Name | Type| Readable| Writable| Description |
+| -------- | -------- | ---- | ---- | ------------------------------------------------------ |
+| distance | number | Yes | Yes | Proximity between the visible object and the device monitor. The value **0** means the two are close to each other, and **1** means that they are far away from each other.|
## LightResponse
@@ -2708,9 +3404,9 @@ Describes the ambient light sensor data. It extends from [Response](#response).
**System capability**: SystemCapability.Sensors.Sensor
-| Name | Type | Readable | Writable | Description |
-| --------- | ------ | ---- | ---- | ----------- |
-| intensity | number | Yes | Yes | Illumination, in lux.|
+| Name | Type| Readable| Writable| Description |
+| --------- | -------- | ---- | ---- | ---------------------- |
+| intensity | number | Yes | Yes | Illumination, in lux.|
## HallResponse
@@ -2746,14 +3442,14 @@ Describes the uncalibrated magnetic field sensor data. It extends from [Response
**System capability**: SystemCapability.Sensors.Sensor
-| Name | Type | Readable | Writable | Description |
-| ----- | ------ | ---- | ---- | ---------------------- |
-| x | number | Yes | Yes | Uncalibrated magnetic field strength on the x-axis, in μT. |
-| y | number | Yes | Yes | Uncalibrated magnetic field strength on the y-axis, in μT. |
-| z | number | Yes | Yes | Uncalibrated magnetic field strength on the z-axis, in μT. |
-| biasX | number | Yes | Yes | Bias of the uncalibrated magnetic field strength on the x-axis, in μT.|
-| biasY | number | Yes | Yes | Bias of the uncalibrated magnetic field strength on the y-axis, in μT.|
-| biasZ | number | Yes | Yes | Bias of the uncalibrated magnetic field strength on the z-axis, in μT.|
+| Name | Type| Readable| Writable| Description |
+| ----- | -------- | ---- | ---- | -------------------------------------- |
+| x | number | Yes | Yes | Uncalibrated magnetic field strength on the x-axis, in μT. |
+| y | number | Yes | Yes | Uncalibrated magnetic field strength on the y-axis, in μT. |
+| z | number | Yes | Yes | Uncalibrated magnetic field strength on the z-axis, in μT. |
+| biasX | number | Yes | Yes | Bias of the uncalibrated magnetic field strength on the x-axis, in μT.|
+| biasY | number | Yes | Yes | Bias of the uncalibrated magnetic field strength on the y-axis, in μT.|
+| biasZ | number | Yes | Yes | Bias of the uncalibrated magnetic field strength on the z-axis, in μT.|
## PedometerResponse
@@ -2763,9 +3459,9 @@ Describes the pedometer sensor data. It extends from [Response](#response).
**System capability**: SystemCapability.Sensors.Sensor
-| Name | Type | Readable | Writable | Description |
-| ----- | ------ | ---- | ---- | -------- |
-| steps | number | Yes | Yes | Number of steps a user has walked.|
+| Name | Type| Readable| Writable| Description |
+| ----- | -------- | ---- | ---- | ---------------- |
+| steps | number | Yes | Yes | Number of steps a user has walked.|
## HumidityResponse
@@ -2775,9 +3471,9 @@ Describes the humidity sensor data. It extends from [Response](#response).
**System capability**: SystemCapability.Sensors.Sensor
-| Name | Type | Readable | Writable | Description |
-| -------- | ------ | ---- | ---- | ------------------------------------ |
-| humidity | number | Yes | Yes | Ambient relative humidity, in a percentage (%).|
+| Name | Type| Readable| Writable| Description |
+| -------- | -------- | ---- | ---- | --------------------------------------------------------- |
+| humidity | number | Yes | Yes | Ambient relative humidity, in a percentage (%).|
## PedometerDetectionResponse
@@ -2787,9 +3483,9 @@ Describes the pedometer detection sensor data. It extends from [Response](#respo
**System capability**: SystemCapability.Sensors.Sensor
-| Name | Type | Readable | Writable | Description |
-| ------ | ------ | ---- | ---- | ---------------------------------------- |
-| scalar | number | Yes | Yes | Pedometer detection. This parameter specifies whether a user takes a step. The value **0** means that the user does not take a step, and **1** means that the user takes a step.|
+| Name | Type| Readable| Writable| Description |
+| ------ | -------- | ---- | ---- | ------------------------------------------------------------ |
+| scalar | number | Yes | Yes | Pedometer detection. This parameter specifies whether a user takes a step. The value **0** means that the user does not take a step, and **1** means that the user takes a step.|
## AmbientTemperatureResponse
@@ -2799,9 +3495,9 @@ Describes the ambient temperature sensor data. It extends from [Response](#respo
**System capability**: SystemCapability.Sensors.Sensor
-| Name | Type | Readable | Writable | Description |
-| ----------- | ------ | ---- | ---- | ------------- |
-| temperature | number | Yes | Yes | Ambient temperature, in degree Celsius.|
+| Name | Type| Readable| Writable| Description |
+| ----------- | -------- | ---- | ---- | -------------------------- |
+| temperature | number | Yes | Yes | Ambient temperature, in degree Celsius.|
## BarometerResponse
@@ -2811,9 +3507,9 @@ Describes the barometer sensor data. It extends from [Response](#response).
**System capability**: SystemCapability.Sensors.Sensor
-| Name | Type | Readable | Writable | Description |
-| -------- | ------ | ---- | ---- | ------------ |
-| pressure | number | Yes | Yes | Atmospheric pressure, in pascal.|
+| Name | Type| Readable| Writable| Description |
+| -------- | -------- | ---- | ---- | ------------------------ |
+| pressure | number | Yes | Yes | Atmospheric pressure, in pascal.|
## HeartRateResponse
@@ -2823,9 +3519,9 @@ Describes the heart rate sensor data. It extends from [Response](#response).
**System capability**: SystemCapability.Sensors.Sensor
-| Name | Type | Readable | Writable | Description |
-| --------- | ------ | ---- | ---- | --------------------- |
-| heartRate | number | Yes | Yes | Heart rate, in beats per minute (bpm).|
+| Name | Type| Readable| Writable| Description |
+| --------- | -------- | ---- | ---- | --------------------------------------- |
+| heartRate | number | Yes | Yes | Heart rate, in beats per minute (bpm).|
## WearDetectionResponse
@@ -2835,9 +3531,9 @@ Describes the wear detection sensor data. It extends from [Response](#response).
**System capability**: SystemCapability.Sensors.Sensor
-| Name | Type | Readable | Writable | Description |
-| ----- | ------ | ---- | ---- | ------------------------- |
-| value | number | Yes | Yes | Whether the device is being worn. The value **1** means that the device is being worn, and **0** means the opposite.|
+| Name | Type| Readable| Writable| Description |
+| ----- | -------- | ---- | ---- | ------------------------------------------------ |
+| value | number | Yes | Yes | Whether the device is being worn. The value **1** means that the device is being worn, and **0** means the opposite.|
## Options
@@ -2846,9 +3542,9 @@ Describes the sensor data reporting frequency.
**System capability**: SystemCapability.Sensors.Sensor
-| Name | Type | Description |
-| -------- | ------ | --------------------------- |
-| interval | number | Frequency at which a sensor reports data. The default value is 200,000,000 ns.|
+| Name | Type| Description |
+| -------- | -------- | ------------------------------------------- |
+| interval | number | Frequency at which a sensor reports data. The default value is 200,000,000 ns.|
## RotationMatrixResponse
@@ -2856,10 +3552,10 @@ Describes the response for setting the rotation matrix.
**System capability**: SystemCapability.Sensors.Sensor
-| Name | Type | Readable | Writable | Description |
-| ----------- | ------------------- | ---- | ---- | ----- |
-| rotation | Array<number> | Yes | Yes | Rotation matrix.|
-| inclination | Array<number> | Yes | Yes | Inclination matrix.|
+| Name | Type | Readable| Writable| Description |
+| ----------- | ------------------- | ---- | ---- | ---------- |
+| rotation | Array<number> | Yes | Yes | Rotation matrix.|
+| inclination | Array<number> | Yes | Yes | Inclination matrix.|
## CoordinatesOptions
@@ -2868,10 +3564,10 @@ Describes the coordinate options.
**System capability**: SystemCapability.Sensors.Sensor
-| Name | Type | Readable | Writable | Description |
-| ---- | ------ | ---- | ---- | ------ |
-| x | number | Yes | Yes | X coordinate direction.|
-| y | number | Yes | Yes | Y coordinate direction.|
+| Name| Type| Readable| Writable| Description |
+| ---- | -------- | ---- | ---- | ----------- |
+| x | number | Yes | Yes | X coordinate direction.|
+| y | number | Yes | Yes | Y coordinate direction.|
## GeomagneticResponse
@@ -2880,15 +3576,15 @@ Describes a geomagnetic response object. It extends from [Response](#response).
**System capability**: SystemCapability.Sensors.Sensor
-| Name | Type | Readable | Writable | Description |
-| --------------- | ------ | ---- | ---- | ------------------------- |
-| x | number | Yes | Yes | North component of the geomagnetic field. |
-| y | number | Yes | Yes | East component of the geomagnetic field. |
-| z | number | Yes | Yes | Vertical component of the geomagnetic field. |
-| geomagneticDip | number | Yes | Yes | Magnetic dip, also called magnetic inclination, which is the angle measured from the horizontal plane to the magnetic field vector. |
-| deflectionAngle | number | Yes | Yes | Magnetic declination, which is the angle between true north (geographic north) and the magnetic north (the horizontal component of the field).|
-| levelIntensity | number | Yes | Yes | Horizontal intensity of the magnetic field vector field. |
-| totalIntensity | number | Yes | Yes | Total intensity of the magnetic field vector. |
+| Name | Type| Readable| Writable| Description |
+| --------------- | -------- | ---- | ---- | -------------------------------------------------- |
+| x | number | Yes | Yes | North component of the geomagnetic field. |
+| y | number | Yes | Yes | East component of the geomagnetic field. |
+| z | number | Yes | Yes | Vertical component of the geomagnetic field. |
+| geomagneticDip | number | Yes | Yes | Magnetic dip, also called magnetic inclination, which is the angle measured from the horizontal plane to the magnetic field vector. |
+| deflectionAngle | number | Yes | Yes | Magnetic declination, which is the angle between true north (geographic north) and the magnetic north (the horizontal component of the field).|
+| levelIntensity | number | Yes | Yes | Horizontal intensity of the magnetic field vector field. |
+| totalIntensity | number | Yes | Yes | Total intensity of the magnetic field vector. |
## LocationOptions
@@ -2896,8 +3592,2607 @@ Describes the geographical location.
**System capability**: SystemCapability.Sensors.Sensor
-| Name | Type | Readable | Writable | Description |
-| --------- | ------ | ---- | ---- | ----- |
-| latitude | number | Yes | Yes | Latitude. |
-| longitude | number | Yes | Yes | Longitude. |
-| altitude | number | Yes | Yes | Altitude.|
+| Name | Type| Readable| Writable| Description |
+| --------- | -------- | ---- | ---- | ---------- |
+| latitude | number | Yes | Yes | Latitude. |
+| longitude | number | Yes | Yes | Longitude. |
+| altitude | number | Yes | Yes | Altitude.|
+
+## sensor.on(deprecated)
+
+### ACCELEROMETER(deprecated)
+
+on(type: SensorType.SENSOR_TYPE_ID_ACCELEROMETER, callback: Callback<AccelerometerResponse>,options?: Options): void
+
+Subscribes to data changes of the acceleration sensor. If this API is called multiple times for the same application, the last call takes effect.
+
+This API is deprecated since API version 9. You are advised to use [sensor.on.ACCELEROMETER](#accelerometer9) instead.
+
+**Required permissions**: ohos.permission.ACCELEROMETER
+
+**System capability**: SystemCapability.Sensors.Sensor
+
+**Parameters**
+
+| Name | Type | Mandatory | Description |
+| -------- | ------------------------------------------------------------ | --------- | ------------------------------------------------------------ |
+| type | [SensorType](#sensortype) | Yes | Type of the sensor to subscribe to, which is **SENSOR_TYPE_ID_ACCELEROMETER**. |
+| callback | Callback<[AccelerometerResponse](#accelerometerresponse)> | Yes | Callback used to return the acceleration sensor data. The reported data type in the callback is **AccelerometerResponse**. |
+| options | [Options](#options) | No | Interval at which the callback is invoked to return the sensor data. The default value is 200,000,000 ns. |
+
+**Example**
+
+ ```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
+
+Subscribes to data changes of the linear acceleration sensor. If this API is called multiple times for the same application, the last call takes effect.
+
+This API is deprecated since API version 9. You are advised to use [sensor.on.LINEAR_ACCELEROMETER](#linear_accelerometer9) instead.
+
+**Required permissions**: ohos.permission.ACCELEROMETER
+
+**System capability**: SystemCapability.Sensors.Sensor
+
+**Parameters**
+
+| Name | Type | Mandatory | Description |
+| -------- | ------------------------------------------------------------ | --------- | ------------------------------------------------------------ |
+| type | [SensorType](#sensortype) | Yes | Type of the sensor to subscribe to, which is **SENSOR_TYPE_ID_LINEAR_ACCELERATION**. |
+| callback | Callback<[LinearAccelerometerResponse](#linearaccelerometerresponse)> | Yes | Callback used to return the linear acceleration sensor data. The reported data type in the callback is **LinearAccelerometerResponse**. |
+| options | [Options](#options) | No | Interval at which the callback is invoked to return the sensor data. The default value is 200,000,000 ns. |
+
+### LINEAR_ACCELEROMETER9+
+
+on(type: SensorType.SENSOR_TYPE_ID_LINEAR_ACCELERATION,callback:Callback<LinearAccelerometerResponse>,
+ options?: Options): void
+
+Subscribes to data changes of the linear acceleration sensor. If this API is called multiple times for the same application, the last call takes effect.
+
+**Required permissions**: ohos.permission.ACCELEROMETER
+
+**System capability**: SystemCapability.Sensors.Sensor
+
+**Parameters**
+
+| Name | Type | Mandatory | Description |
+| -------- | ------------------------------------------------------------ | --------- | ------------------------------------------------------------ |
+| type | [SensorType](#sensortype) | Yes | Type of the sensor to subscribe to, which is **SENSOR_TYPE_ID_LINEAR_ACCELEROMETER**. |
+| callback | Callback<[LinearAccelerometerResponse](#linearaccelerometerresponse)> | Yes | Callback used to return the linear acceleration sensor data. The reported data type in the callback is **LinearAccelerometerResponse**. |
+| options | [Options](#options) | No | Interval at which the callback is invoked to return the sensor data. The default value is 200,000,000 ns. |
+
+**Example**
+
+ ```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
+
+Subscribes to data changes of the uncalibrated acceleration sensor. If this API is called multiple times for the same application, the last call takes effect.
+
+This API is deprecated since API version 9. You are advised to use [sensor.on.ACCELEROMETER_UNCALIBRATED](#accelerometer_uncalibrated9) instead.
+
+**Required permissions**: ohos.permission.ACCELEROMETER
+
+**System capability**: SystemCapability.Sensors.Sensor
+
+**Parameters**
+
+| Name | Type | Mandatory | Description |
+| -------- | ------------------------------------------------------------ | --------- | ------------------------------------------------------------ |
+| type | [SensorType](#sensortype) | Yes | Type of the sensor to subscribe to, which is **SENSOR_TYPE_ID_ACCELEROMETER_UNCALIBRATED**. |
+| callback | Callback<[AccelerometerUncalibratedResponse](#accelerometeruncalibratedresponse)> | Yes | Callback used to return the uncalibrated acceleration sensor data. The reported data type in the callback is **AccelerometerUncalibratedResponse**. |
+| options | [Options](#options) | No | Interval at which the callback is invoked to return the sensor data. The default value is 200,000,000 ns. |
+
+**Example**
+
+ ```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
+
+Subscribes to data changes of the gravity sensor. If this API is called multiple times for the same application, the last call takes effect.
+
+This API is deprecated since API version 9. You are advised to use [sensor.on.GRAVITY](#gravity9) instead.
+
+**System capability**: SystemCapability.Sensors.Sensor
+
+**Parameters**
+
+| Name | Type | Mandatory | Description |
+| -------- | --------------------------------------------------- | --------- | ------------------------------------------------------------ |
+| type | [SensorType](#sensortype) | Yes | Type of the sensor to subscribe to, which is **SENSOR_TYPE_ID_GRAVITY**. |
+| callback | Callback<[GravityResponse](#gravityresponse)> | Yes | Callback used to return the gravity sensor data. The reported data type in the callback is **GravityResponse**. |
+| options | [Options](#options) | No | Interval at which the callback is invoked to return the sensor data. The default value is 200,000,000 ns. |
+
+**Example**
+
+ ```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
+
+Subscribes to data changes of the gyroscope sensor. If this API is called multiple times for the same application, the last call takes effect.
+
+This API is deprecated since API version 9. You are advised to use [sensor.on.GYROSCOPE](#gyroscope9) instead.
+
+**Required permissions**: ohos.permission.GYROSCOPE
+
+**System capability**: SystemCapability.Sensors.Sensor
+
+**Parameters**
+
+| Name | Type | Mandatory | Description |
+| -------- | ------------------------------------------------------- | --------- | ------------------------------------------------------------ |
+| type | [SensorType](#sensortype) | Yes | Type of the sensor to subscribe to, which is **SENSOR_TYPE_ID_GYROSCOPE**. |
+| callback | Callback<[GyroscopeResponse](#gyroscoperesponse)> | Yes | Callback used to return the gyroscope sensor data. The reported data type in the callback is **GyroscopeResponse**. |
+| options | [Options](#options) | No | Interval at which the callback is invoked to return the sensor data. The default value is 200,000,000 ns. |
+
+**Example**
+
+ ```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
+
+Subscribes to data changes of the uncalibrated gyroscope sensor. If this API is called multiple times for the same application, the last call takes effect.
+
+This API is deprecated since API version 9. You are advised to use [sensor.on.GYROSCOPE_UNCALIBRATED](#gyroscope_uncalibrated9) instead.
+
+**Required permissions**: ohos.permission.GYROSCOPE
+
+**System capability**: SystemCapability.Sensors.Sensor
+
+**Parameters**
+
+| Name | Type | Mandatory | Description |
+| -------- | ------------------------------------------------------------ | --------- | ------------------------------------------------------------ |
+| type | [SensorType](#sensortype) | Yes | Type of the sensor to subscribe to, which is **SENSOR_TYPE_ID_GYROSCOPE_UNCALIBRATED**. |
+| callback | Callback<[GyroscopeUncalibratedResponse](#gyroscopeuncalibratedresponse)> | Yes | Callback used to return the uncalibrated gyroscope sensor data. The reported data type in the callback is **GyroscopeUncalibratedResponse**. |
+| options | [Options](#options) | No | Interval at which the callback is invoked to return the sensor data. |
+
+**Example**
+
+ ```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
+
+Subscribes to data changes of the significant motion sensor. If this API is called multiple times for the same application, the last call takes effect.
+
+This API is deprecated since API version 9. You are advised to use [sensor.on.SIGNIFICANT_MOTION](#significant_motion9) instead.
+
+**System capability**: SystemCapability.Sensors.Sensor
+
+**Parameters**
+
+| Name | Type | Mandatory | Description |
+| -------- | ------------------------------------------------------------ | --------- | ------------------------------------------------------------ |
+| type | [SensorType](#sensortype) | Yes | Type of the sensor to subscribe to, which is **SENSOR_TYPE_ID_SIGNIFICANT_MOTION**. |
+| callback | Callback<[SignificantMotionResponse](#significantmotionresponse)> | Yes | Callback used to return the significant motion sensor data. The reported data type in the callback is **SignificantMotionResponse**. |
+| options | [Options](#options) | No | Interval at which the callback is invoked to return the sensor data. The default value is 200,000,000 ns. |
+
+**Example**
+
+ ```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
+
+Subscribes to data changes of the pedometer detection sensor. If this API is called multiple times for the same application, the last call takes effect.
+
+This API is deprecated since API version 9. You are advised to use [sensor.on.PEDOMETER_DETECTION](#pedometer_detection9) instead.
+
+**Required permissions**: ohos.permission.ACTIVITY_MOTION
+
+**System capability**: SystemCapability.Sensors.Sensor
+
+**Parameters**
+
+| Name | Type | Mandatory | Description |
+| -------- | ------------------------------------------------------------ | --------- | ------------------------------------------------------------ |
+| type | [SensorType](#sensortype) | Yes | Type of the sensor to subscribe to, which is **SENSOR_TYPE_ID_PEDOMETER_DETECTION**. |
+| callback | Callback<[PedometerDetectionResponse](#pedometerdetectionresponse)> | Yes | Callback used to return the pedometer detection sensor data. The reported data type in the callback is **PedometerDetectionResponse**. |
+| options | [Options](#options) | No | Interval at which the callback is invoked to return the sensor data. The default value is 200,000,000 ns. |
+
+**Example**
+
+ ```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
+
+Subscribes to data changes of the pedometer sensor. If this API is called multiple times for the same application, the last call takes effect.
+
+This API is deprecated since API version 9. You are advised to use [sensor.on.PEDOMETER](#pedometer9) instead.
+
+**Required permissions**: ohos.permission.ACTIVITY_MOTION
+
+**System capability**: SystemCapability.Sensors.Sensor
+
+**Parameters**
+
+| Name | Type | Mandatory | Description |
+| -------- | ------------------------------------------------------- | --------- | ------------------------------------------------------------ |
+| type | [SensorType](#sensortype) | Yes | Type of the sensor to subscribe to, which is **SENSOR_TYPE_ID_PEDOMETER**. |
+| callback | Callback<[PedometerResponse](#pedometerresponse)> | Yes | Callback used to return the pedometer sensor data. The reported data type in the callback is **PedometerResponse**. |
+| options | [Options](#options) | No | Interval at which the callback is invoked to return the sensor data. The default value is 200,000,000 ns. |
+
+**Example**
+
+ ```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
+
+Subscribes to data changes of the ambient temperature sensor. If this API is called multiple times for the same application, the last call takes effect.
+
+This API is deprecated since API version 9. You are advised to use [sensor.on.AMBIENT_TEMPERATURE](#ambient_temperature9) instead.
+
+**System capability**: SystemCapability.Sensors.Sensor
+
+**Parameters**
+
+| Name | Type | Mandatory | Description |
+| -------- | ------------------------------------------------------------ | --------- | ------------------------------------------------------------ |
+| type | [SensorType](#sensortype) | Yes | Type of the sensor to subscribe to, which is **SENSOR_TYPE_ID_AMBIENT_TEMPERATURE**. |
+| callback | Callback<[AmbientTemperatureResponse](#ambienttemperatureresponse)> | Yes | Callback used to return the ambient temperature sensor data. The reported data type in the callback is **AmbientTemperatureResponse**. |
+| options | [Options](#options) | No | Interval at which the callback is invoked to return the sensor data. The default value is 200,000,000 ns. |
+
+**Example**
+
+ ```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
+
+Subscribes to data changes of the magnetic field sensor. If this API is called multiple times for the same application, the last call takes effect.
+
+This API is deprecated since API version 9. You are advised to use [sensor.on.MAGNETIC_FIELD](#magnetic_field9) instead.
+
+**System capability**: SystemCapability.Sensors.Sensor
+
+**Parameters**
+
+| Name | Type | Mandatory | Description |
+| -------- | ------------------------------------------------------------ | --------- | ------------------------------------------------------------ |
+| type | [SensorType](#sensortype) | Yes | Type of the sensor to subscribe to, which is **SENSOR_TYPE_ID_MAGNETIC_FIELD**. |
+| callback | Callback<[MagneticFieldResponse](#magneticfieldresponse)> | Yes | Callback used to return the magnetic field sensor data. The reported data type in the callback is **MagneticFieldResponse**. |
+| options | [Options](#options) | No | Interval at which the callback is invoked to return the sensor data. The default value is 200,000,000 ns. |
+
+**Example**
+
+ ```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
+
+Subscribes to data changes of the uncalibrated magnetic field sensor. If this API is called multiple times for the same application, the last call takes effect.
+
+This API is deprecated since API version 9. You are advised to use [sensor.on.MAGNETIC_FIELD_UNCALIBRATED](#magnetic_field_uncalibrated9) instead.
+
+**System capability**: SystemCapability.Sensors.Sensor
+
+**Parameters**
+
+| Name | Type | Mandatory | Description |
+| -------- | ------------------------------------------------------------ | --------- | ------------------------------------------------------------ |
+| type | [SensorType](#sensortype) | Yes | Type of the sensor to subscribe to, which is **SENSOR_TYPE_ID_MAGNETIC_FIELD_UNCALIBRATED**. |
+| callback | Callback<[MagneticFieldUncalibratedResponse](#magneticfielduncalibratedresponse)> | Yes | Callback used to return the uncalibrated magnetic field sensor data. The reported data type in the callback is **MagneticFieldUncalibratedResponse**. |
+| options | [Options](#options) | No | Interval at which the callback is invoked to return the sensor data. The default value is 200,000,000 ns. |
+
+**Example**
+
+ ```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
+
+Subscribes to data changes of the proximity sensor. If this API is called multiple times for the same application, the last call takes effect.
+
+This API is deprecated since API version 9. You are advised to use [sensor.on.PROXIMITY](#proximity9) instead.
+
+**System capability**: SystemCapability.Sensors.Sensor
+
+**Parameters**
+
+| Name | Type | Mandatory | Description |
+| -------- | ------------------------------------------------------- | --------- | ------------------------------------------------------------ |
+| type | [SensorType](#sensortype) | Yes | Type of the sensor to subscribe to, which is **SENSOR_TYPE_ID_PROXIMITY**. |
+| callback | Callback<[ProximityResponse](#proximityresponse)> | Yes | Callback used to return the proximity sensor data. The reported data type in the callback is **ProximityResponse**. |
+| options | [Options](#options) | No | Interval at which the callback is invoked to return the sensor data. The default value is 200,000,000 ns. |
+
+**Example**
+
+ ```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
+
+Subscribes to data changes of the humidity sensor. If this API is called multiple times for the same application, the last call takes effect.
+
+This API is deprecated since API version 9. You are advised to use [sensor.on.HUMIDITY](#humidity9) instead.
+
+**System capability**: SystemCapability.Sensors.Sensor
+
+**Parameters**
+
+| Name | Type | Mandatory | Description |
+| -------- | ----------------------------------------------------- | --------- | ------------------------------------------------------------ |
+| type | [SensorType](#sensortype) | Yes | Type of the sensor to subscribe to, which is **SENSOR_TYPE_ID_HUMIDITY**. |
+| callback | Callback<[HumidityResponse](#humidityresponse)> | Yes | Callback used to return the humidity sensor data. The reported data type in the callback is **HumidityResponse**. |
+| options | [Options](#options) | No | Interval at which the callback is invoked to return the sensor data. The default value is 200,000,000 ns. |
+
+**Example**
+
+ ```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
+
+Subscribes to data changes of the barometer sensor. If this API is called multiple times for the same application, the last call takes effect.
+
+This API is deprecated since API version 9. You are advised to use [sensor.on.BAROMETER](#barometer9) instead.
+
+**System capability**: SystemCapability.Sensors.Sensor
+
+**Parameters**
+
+| Name | Type | Mandatory | Description |
+| -------- | ------------------------------------------------------- | --------- | ------------------------------------------------------------ |
+| type | [SensorType](#sensortype) | Yes | Type of the sensor to subscribe to, which is **SENSOR_TYPE_ID_BAROMETER**. |
+| callback | Callback<[BarometerResponse](#barometerresponse)> | Yes | Callback used to return the barometer sensor data. The reported data type in the callback is **BarometerResponse**. |
+| options | [Options](#options) | No | Interval at which the callback is invoked to return the sensor data. The default value is 200,000,000 ns. |
+
+**Example**
+
+ ```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
+
+Subscribes to data changes of the Hall effect sensor. If this API is called multiple times for the same application, the last call takes effect.
+
+This API is deprecated since API version 9. You are advised to use [sensor.on.HALL](#hall9) instead.
+
+**System capability**: SystemCapability.Sensors.Sensor
+
+**Parameters**
+
+| Name | Type | Mandatory | Description |
+| -------- | --------------------------------------------- | --------- | ------------------------------------------------------------ |
+| type | [SensorType](#sensortype) | Yes | Type of the sensor to subscribe to, which is **SENSOR_TYPE_ID_HALL**. |
+| callback | Callback<[HallResponse](#hallresponse)> | Yes | Callback used to return the Hall effect sensor data. The reported data type in the callback is **HallResponse**. |
+| options | [Options](#options) | No | Interval at which the callback is invoked to return the sensor data. The default value is 200,000,000 ns. |
+
+**Example**
+
+ ```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
+
+Subscribes to data changes of the ambient light sensor. If this API is called multiple times for the same application, the last call takes effect.
+
+This API is deprecated since API version 9. You are advised to use [sensor.on.AMBIENT_LIGHT](#ambient_light9) instead.
+
+**System capability**: SystemCapability.Sensors.Sensor
+
+**Parameters**
+
+| Name | Type | Mandatory | Description |
+| -------- | ----------------------------------------------- | --------- | ------------------------------------------------------------ |
+| type | [SensorType](#sensortype) | Yes | Type of the sensor to subscribe to, which is **SENSOR_TYPE_ID_AMBIENT_LIGHT**. |
+| callback | Callback<[LightResponse](#lightresponse)> | Yes | Callback used to return the ambient light sensor data. The reported data type in the callback is **LightResponse**. |
+| options | [Options](#options) | No | Interval at which the callback is invoked to return the sensor data. The default value is 200,000,000 ns. |
+
+**Example**
+
+ ```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
+
+Subscribes to data changes of the orientation sensor. If this API is called multiple times for the same application, the last call takes effect.
+
+This API is deprecated since API version 9. You are advised to use [sensor.on.ORIENTATION](#orientation9) instead.
+
+**System capability**: SystemCapability.Sensors.Sensor
+
+**Parameters**
+
+| Name | Type | Mandatory | Description |
+| -------- | ----------------------------------------------------------- | --------- | ------------------------------------------------------------ |
+| type | [SensorType](#sensortype) | Yes | Type of the sensor to subscribe to, which is **SENSOR_TYPE_ID_ORIENTATION**. |
+| callback | Callback<[OrientationResponse](#orientationresponse)> | Yes | Callback used to return the orientation sensor data. The reported data type in the callback is **OrientationResponse**. |
+| options | [Options](#options) | No | Interval at which the callback is invoked to return the sensor data. The default value is 200,000,000 ns. |
+
+**Example**
+
+ ```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
+
+Subscribes to only one data change of the heart rate sensor.
+
+This API is deprecated since API version 9. You are advised to use [sensor.on.HEART_BEAT_RATE](#heart_beat_rate9) instead.
+
+**Required permissions**: ohos.permission.HEALTH_DATA
+
+**System capability**: SystemCapability.Sensors.Sensor
+
+**Parameters**
+
+| Name | Type | Mandatory | Description |
+| -------- | ------------------------------------------------------- | --------- | ------------------------------------------------------------ |
+| type | [SensorType](#sensortype) | Yes | Type of the sensor to subscribe to, which is **SENSOR_TYPE_ID_HEART_RATE**. |
+| callback | Callback<[HeartRateResponse](#heartrateresponse)> | Yes | One-shot callback used to return the heart rate sensor data. The reported data type in the callback is **HeartRateResponse**. |
+
+### HEART_BEAT_RATE9+
+
+on(type: SensorType.SENSOR_TYPE_ID_HEART_RATE, callback: Callback<HeartRateResponse>,
+ options?: Options): void
+
+Subscribes to only one data change of the heart rate sensor.
+
+**Required permissions**: ohos.permission.HEALTH_DATA
+
+**System capability**: SystemCapability.Sensors.Sensor
+
+**Parameters**
+
+| Name | Type | Mandatory | Description |
+| -------- | ------------------------------------------------------- | --------- | ------------------------------------------------------------ |
+| type | [SensorType](#sensortype) | Yes | Type of the sensor to subscribe to, which is **SENSOR_TYPE_ID_HEART_BEAT_RATE**. |
+| callback | Callback<[HeartRateResponse](#heartrateresponse)> | Yes | One-shot callback used to return the heart rate sensor data. The reported data type in the callback is **HeartRateResponse**. |
+
+**Example**
+
+```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
+
+Subscribes to data changes of the rotation vector sensor. If this API is called multiple times for the same application, the last call takes effect.
+
+This API is deprecated since API version 9. You are advised to use [sensor.on.ROTATION_VECTOR](#rotation_vector9) instead.
+
+**System capability**: SystemCapability.Sensors.Sensor
+
+**Parameters**
+
+| Name | Type | Mandatory | Description |
+| -------- | ------------------------------------------------------------ | --------- | ------------------------------------------------------------ |
+| type | [SensorType](#sensortype) | Yes | Type of the sensor to subscribe to, which is **SENSOR_TYPE_ID_ROTATION_VECTOR**. |
+| callback | Callback<[RotationVectorResponse](#rotationvectorresponse)> | Yes | Callback used to return the rotation vector sensor data. The reported data type in the callback is **RotationVectorResponse**. |
+| options | [Options](#options) | No | Interval at which the callback is invoked to return the sensor data. The default value is 200,000,000 ns. |
+
+**Example**
+
+ ```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
+
+Subscribes to data changes of the wear detection sensor. If this API is called multiple times for the same application, the last call takes effect.
+
+This API is deprecated since API version 9. You are advised to use [sensor.on.WEAR_DETECTION](#wear_detection9) instead.
+
+**System capability**: SystemCapability.Sensors.Sensor
+
+**Parameters**
+
+| Name | Type | Mandatory | Description |
+| -------- | ------------------------------------------------------------ | --------- | ------------------------------------------------------------ |
+| type | [SensorType](#sensortype) | Yes | Type of the sensor to subscribe to, which is **SENSOR_TYPE_ID_WEAR_DETECTION**. |
+| callback | Callback<[WearDetectionResponse](#weardetectionresponse)> | Yes | Callback used to return the wear detection sensor data. The reported data type in the callback is **WearDetectionResponse**. |
+| options | [Options](#options) | No | Interval at which the callback is invoked to return the sensor data. The default value is 200,000,000 ns. |
+
+**Example**
+
+ ```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
+
+Subscribes to only one data change of the acceleration sensor.
+
+This API is deprecated since API version 9. You are advised to use [sensor.once.ACCELEROMETER](#accelerometer9-1) instead.
+
+**Required permissions**: ohos.permission.ACCELEROMETER
+
+**System capability**: SystemCapability.Sensors.Sensor
+
+**Parameters**
+
+| Name | Type | Mandatory | Description |
+| -------- | ------------------------------------------------------------ | --------- | ------------------------------------------------------------ |
+| type | [SensorType](#sensortype) | Yes | Type of the sensor to subscribe to, which is **SENSOR_TYPE_ID_ACCELEROMETER**. |
+| callback | Callback<[AccelerometerResponse](#accelerometerresponse)> | Yes | One-shot callback used to return the acceleration sensor data. The reported data type in the callback is **AccelerometerResponse**. |
+
+**Example**
+
+ ```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
+
+Subscribes to only one data change of the linear acceleration sensor.
+
+This API is deprecated since API version 9. You are advised to use [sensor.once.LINEAR_ACCELEROMETER](#linear_accelerometer9) instead.
+
+**Required permissions**: ohos.permission.ACCELERATION
+
+**System capability**: SystemCapability.Sensors.Sensor
+
+**Parameters**
+
+| Name | Type | Mandatory | Description |
+| -------- | ------------------------------------------------------------ | --------- | ------------------------------------------------------------ |
+| type | [SensorType](#sensortype) | Yes | Type of the sensor to subscribe to, which is **SENSOR_TYPE_ID_LINEAR_ACCELERATION**. |
+| callback | Callback<[LinearAccelerometerResponse](#linearaccelerometerresponse)> | Yes | One-shot callback used to return the linear acceleration sensor data. The reported data type in the callback is **LinearAccelerometerResponse**. |
+
+### LINEAR_ACCELEROMETER9+
+
+once(type: SensorType.SENSOR_TYPE_ID_LINEAR_ACCELERATION,callback:Callback<LinearAccelerometerResponse>): void
+
+Subscribes to only one data change of the linear acceleration sensor.
+
+**Required permissions**: ohos.permission.ACCELERATION
+
+**System capability**: SystemCapability.Sensors.Sensor
+
+**Parameters**
+
+| Name | Type | Mandatory | Description |
+| -------- | ------------------------------------------------------------ | --------- | ------------------------------------------------------------ |
+| type | [SensorType](#sensortype) | Yes | Type of the sensor to subscribe to, which is **SENSOR_TYPE_ID_LINEAR_ACCELEROMETER**. |
+| callback | Callback<[LinearAccelerometerResponse](#linearaccelerometerresponse)> | Yes | One-shot callback used to return the linear acceleration sensor data. The reported data type in the callback is **LinearAccelerometerResponse**. |
+
+**Example**
+
+ ```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
+
+Subscribes to only one data change of the uncalibrated acceleration sensor.
+
+This API is deprecated since API version 9. You are advised to use [sensor.once.ACCELEROMETER_UNCALIBRATED](#accelerometer_uncalibrated9-1) instead.
+
+**Required permissions**: ohos.permission.ACCELEROMETER
+
+**System capability**: SystemCapability.Sensors.Sensor
+
+**Parameters**
+
+| Name | Type | Mandatory | Description |
+| -------- | ------------------------------------------------------------ | --------- | ------------------------------------------------------------ |
+| type | [SensorType](#sensortype) | Yes | Type of the sensor to subscribe to, which is **SENSOR_TYPE_ID_ACCELEROMETER_UNCALIBRATED**. |
+| callback | Callback<[AccelerometerUncalibratedResponse](#accelerometeruncalibratedresponse)> | Yes | One-shot callback used to return the uncalibrated acceleration sensor data. The reported data type in the callback is **AccelerometerUncalibratedResponse**. |
+
+**Example**
+
+ ```
+ 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
+
+Subscribes to only one data change of the gravity sensor.
+
+This API is deprecated since API version 9. You are advised to use [sensor.once.GRAVITY](#gravity9-1) instead.
+
+**System capability**: SystemCapability.Sensors.Sensor
+
+**Parameters**
+
+| Name | Type | Mandatory | Description |
+| -------- | --------------------------------------------------- | --------- | ------------------------------------------------------------ |
+| type | [SensorType](#sensortype) | Yes | Type of the sensor to subscribe to, which is **SENSOR_TYPE_ID_GRAVITY**. |
+| callback | Callback<[GravityResponse](#gravityresponse)> | Yes | One-shot callback used to return the gravity sensor data. The reported data type in the callback is **GravityResponse**. |
+
+**Example**
+
+ ```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
+
+Subscribes to only one data change of the gyroscope sensor.
+
+This API is deprecated since API version 9. You are advised to use [sensor.once.GYROSCOPE](#gyroscope9-1) instead.
+
+**Required permissions**: ohos.permission.GYROSCOPE
+
+**System capability**: SystemCapability.Sensors.Sensor
+
+**Parameters**
+
+| Name | Type | Mandatory | Description |
+| -------- | ------------------------------------------------------- | --------- | ------------------------------------------------------------ |
+| type | [SensorType](#sensortype) | Yes | Type of the sensor to subscribe to, which is **SENSOR_TYPE_ID_GYROSCOPE**. |
+| callback | Callback<[GyroscopeResponse](#gyroscoperesponse)> | Yes | One-shot callback used to return the gyroscope sensor data. The reported data type in the callback is **GyroscopeResponse**. |
+
+**Example**
+
+ ```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
+
+Subscribes to only one data change of the uncalibrated gyroscope sensor.
+
+This API is deprecated since API version 9. You are advised to use [sensor.once.GYROSCOPE_UNCALIBRATED](#gyroscope_uncalibrated9-1) instead.
+
+**Required permissions**: ohos.permission.GYROSCOPE
+
+**System capability**: SystemCapability.Sensors.Sensor
+
+**Parameters**
+
+| Name | Type | Mandatory | Description |
+| -------- | ------------------------------------------------------------ | --------- | ------------------------------------------------------------ |
+| type | [SensorType](#sensortype) | Yes | Type of the sensor to subscribe to, which is **SENSOR_TYPE_ID_GYROSCOPE_UNCALIBRATED**. |
+| callback | Callback<[GyroscopeUncalibratedResponse](#gyroscopeuncalibratedresponse)> | Yes | One-shot callback used to return the uncalibrated gyroscope sensor data. The reported data type in the callback is **GyroscopeUncalibratedResponse**. |
+
+**Example**
+
+ ```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
+
+Subscribes to only one data change of the significant motion sensor.
+
+This API is deprecated since API version 9. You are advised to use [sensor.once.SIGNIFICANT_MOTION](#significant_motion9-1) instead.
+
+**System capability**: SystemCapability.Sensors.Sensor
+
+**Parameters**
+
+| Name | Type | Mandatory | Description |
+| -------- | ------------------------------------------------------------ | --------- | ------------------------------------------------------------ |
+| type | [SensorType](#sensortype) | Yes | Type of the sensor to subscribe to, which is **SENSOR_TYPE_ID_SIGNIFICANT_MOTION**. |
+| callback | Callback<[SignificantMotionResponse](#significantmotionresponse)> | Yes | One-shot callback used to return the significant motion sensor data. The reported data type in the callback is **SignificantMotionResponse**. |
+
+**Example**
+
+ ```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
+
+Subscribes to only one data change of the pedometer detection sensor.
+
+This API is deprecated since API version 9. You are advised to use [sensor.once.PEDOMETER_DETECTION](#pedometer_detection9-1) instead.
+
+**Required permissions**: ohos.permission.ACTIVITY_MOTION
+
+**System capability**: SystemCapability.Sensors.Sensor
+
+**Parameters**
+
+| Name | Type | Mandatory | Description |
+| -------- | ------------------------------------------------------------ | --------- | ------------------------------------------------------------ |
+| type | [SensorType](#sensortype) | Yes | Type of the sensor to subscribe to, which is **SENSOR_TYPE_ID_PEDOMETER_DETECTION**. |
+| callback | Callback<[PedometerDetectionResponse](#pedometerdetectionresponse)> | Yes | One-shot callback used to return the pedometer detection sensor data. The reported data type in the callback is **PedometerDetectionResponse**. |
+
+**Example**
+
+ ```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
+
+Subscribes to only one data change of the pedometer sensor.
+
+This API is deprecated since API version 9. You are advised to use [sensor.once.PEDOMETER](#pedometer9-1) instead.
+
+**Required permissions**: ohos.permission.ACTIVITY_MOTION
+
+**System capability**: SystemCapability.Sensors.Sensor
+
+**Parameters**
+
+| Name | Type | Mandatory | Description |
+| -------- | ------------------------------------------------------- | --------- | ------------------------------------------------------------ |
+| type | [SensorType](#sensortype) | Yes | Type of the sensor to subscribe to, which is **SENSOR_TYPE_ID_PEDOMETER**. |
+| callback | Callback<[PedometerResponse](#pedometerresponse)> | Yes | One-shot callback used to return the pedometer sensor data. The reported data type in the callback is **PedometerResponse**. |
+
+**Example**
+
+ ```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
+
+Subscribes to only one data change of the ambient temperature sensor.
+
+This API is deprecated since API version 9. You are advised to use [sensor.once.AMBIENT_TEMPERATURE](#ambient_temperature9-1) instead.
+
+**System capability**: SystemCapability.Sensors.Sensor
+
+**Parameters**
+
+| Name | Type | Mandatory | Description |
+| -------- | ------------------------------------------------------------ | --------- | ------------------------------------------------------------ |
+| type | [SensorType](#sensortype) | Yes | Type of the sensor to subscribe to, which is **SENSOR_TYPE_ID_AMBIENT_TEMPERATURE**. |
+| callback | Callback<[AmbientTemperatureResponse](#ambienttemperatureresponse)> | Yes | One-shot callback used to return the ambient temperature sensor data. The reported data type in the callback is **AmbientTemperatureResponse**. |
+
+**Example**
+
+ ```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
+
+Subscribes to only one data change of the magnetic field sensor.
+
+This API is deprecated since API version 9. You are advised to use [sensor.once.MAGNETIC_FIELD](#magnetic_field9-1) instead.
+
+**System capability**: SystemCapability.Sensors.Sensor
+
+**Parameters**
+
+| Name | Type | Mandatory | Description |
+| -------- | ------------------------------------------------------------ | --------- | ------------------------------------------------------------ |
+| type | [SensorType](#sensortype) | Yes | Type of the sensor to subscribe to, which is **SENSOR_TYPE_ID_MAGNETIC_FIELD**. |
+| callback | Callback<[MagneticFieldResponse](#magneticfieldresponse)> | Yes | One-shot callback used to return the magnetic field sensor data. The reported data type in the callback is **MagneticFieldResponse**. |
+
+**Example**
+
+ ```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
+
+Subscribes to only one data change of the uncalibrated magnetic field sensor.
+
+This API is deprecated since API version 9. You are advised to use [sensor.once.MAGNETIC_FIELD_UNCALIBRATED](#magnetic_field_uncalibrated9-1) instead.
+
+**System capability**: SystemCapability.Sensors.Sensor
+
+**Parameters**
+
+| Name | Type | Mandatory | Description |
+| -------- | ------------------------------------------------------------ | --------- | ------------------------------------------------------------ |
+| type | [SensorType](#sensortype) | Yes | Type of the sensor to subscribe to, which is **SENSOR_TYPE_ID_MAGNETIC_FIELD_UNCALIBRATED**. |
+| callback | Callback<[MagneticFieldUncalibratedResponse](#magneticfielduncalibratedresponse)> | Yes | One-shot callback used to return the uncalibrated magnetic field sensor data. The reported data type in the callback is **MagneticFieldUncalibratedResponse**. |
+
+**Example**
+
+ ```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
+
+Subscribes to only one data change of the proximity sensor.
+
+This API is deprecated since API version 9. You are advised to use [sensor.once.PROXIMITY](#proximity9-1) instead.
+
+**System capability**: SystemCapability.Sensors.Sensor
+
+**Parameters**
+
+| Name | Type | Mandatory | Description |
+| -------- | ------------------------------------------------------- | --------- | ------------------------------------------------------------ |
+| type | [SensorType](#sensortype) | Yes | Type of the sensor to subscribe to, which is **SENSOR_TYPE_ID_PROXIMITY**. |
+| callback | Callback<[ProximityResponse](#proximityresponse)> | Yes | One-shot callback used to return the proximity sensor data. The reported data type in the callback is **ProximityResponse**. |
+
+**Example**
+
+ ```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
+
+Subscribes to only one data change of the humidity sensor.
+
+This API is deprecated since API version 9. You are advised to use [sensor.once.HUMIDITY](#humidity9-1) instead.
+
+**System capability**: SystemCapability.Sensors.Sensor
+
+**Parameters**
+
+| Name | Type | Mandatory | Description |
+| -------- | ----------------------------------------------------- | --------- | ------------------------------------------------------------ |
+| type | [SensorType](#sensortype) | Yes | Type of the sensor to subscribe to, which is **SENSOR_TYPE_ID_HUMIDITY**. |
+| callback | Callback<[HumidityResponse](#humidityresponse)> | Yes | One-shot callback used to return the humidity sensor data. The reported data type in the callback is **HumidityResponse**. |
+
+**Example**
+
+ ```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
+
+Subscribes to only one data change of the barometer sensor.
+
+This API is deprecated since API version 9. You are advised to use [sensor.once.BAROMETER](#barometer9-1) instead.
+
+**System capability**: SystemCapability.Sensors.Sensor
+
+**Parameters**
+
+| Name | Type | Mandatory | Description |
+| -------- | ------------------------------------------------------- | --------- | ------------------------------------------------------------ |
+| type | [SensorType](#sensortype) | Yes | Type of the sensor to subscribe to, which is **SENSOR_TYPE_ID_BAROMETER**. |
+| callback | Callback<[BarometerResponse](#barometerresponse)> | Yes | One-shot callback used to return the barometer sensor data. The reported data type in the callback is **BarometerResponse**. |
+
+**Example**
+
+ ```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
+
+Subscribes to only one data change of the Hall effect sensor.
+
+This API is deprecated since API version 9. You are advised to use [sensor.once.HALL](#hall9-1) instead.
+
+**System capability**: SystemCapability.Sensors.Sensor
+
+**Parameters**
+
+| Name | Type | Mandatory | Description |
+| -------- | --------------------------------------------- | --------- | ------------------------------------------------------------ |
+| type | [SensorType](#sensortype) | Yes | Type of the sensor to subscribe to, which is **SENSOR_TYPE_ID_HALL**. |
+| callback | Callback<[HallResponse](#hallresponse)> | Yes | One-shot callback used to return the Hall effect sensor data. The reported data type in the callback is **HallResponse**. |
+
+**Example**
+
+ ```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
+
+Subscribes to only one data change of the ambient light sensor.
+
+This API is deprecated since API version 9. You are advised to use [sensor.once.AMBIENT_LIGHT](#ambient_light9-1) instead.
+
+**System capability**: SystemCapability.Sensors.Sensor
+
+**Parameters**
+
+| Name | Type | Mandatory | Description |
+| -------- | ----------------------------------------------- | --------- | ------------------------------------------------------------ |
+| type | [SensorType](#sensortype) | Yes | Type of the sensor to subscribe to, which is **SENSOR_TYPE_ID_AMBIENT_LIGHT**. |
+| callback | Callback<[LightResponse](#lightresponse)> | Yes | One-shot callback used to return the ambient light sensor data. The reported data type in the callback is **LightResponse**. |
+
+**Example**
+
+ ```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
+
+Subscribes to only one data change of the orientation sensor.
+
+This API is deprecated since API version 9. You are advised to use [sensor.once.ORIENTATION](#orientation9-1) instead.
+
+**System capability**: SystemCapability.Sensors.Sensor
+
+**Parameters**
+
+| Name | Type | Mandatory | Description |
+| -------- | ----------------------------------------------------------- | --------- | ------------------------------------------------------------ |
+| type | [SensorType](#sensortype) | Yes | Type of the sensor to subscribe to, which is **SENSOR_TYPE_ID_ORIENTATION**. |
+| callback | Callback<[OrientationResponse](#orientationresponse)> | Yes | One-shot callback used to return the orientation sensor data. The reported data type in the callback is **OrientationResponse**. |
+
+**Example**
+
+ ```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
+
+Subscribes to only one data change of the rotation vector sensor.
+
+This API is deprecated since API version 9. You are advised to use [sensor.once.ROTATION_VECTOR](#rotation_vector9-1) instead.
+
+**System capability**: SystemCapability.Sensors.Sensor
+
+**Parameters**
+
+| Name | Type | Mandatory | Description |
+| -------- | ------------------------------------------------------------ | --------- | ------------------------------------------------------------ |
+| type | [SensorType](#sensortype) | Yes | Type of the sensor to subscribe to, which is **SENSOR_TYPE_ID_ROTATION_VECTOR**. |
+| callback | Callback<[RotationVectorResponse](#rotationvectorresponse)> | Yes | One-shot callback used to return the rotation vector sensor data. The reported data type in the callback is **RotationVectorResponse**. |
+
+**Example**
+
+ ```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
+
+Subscribes to only one data change of the heart rate sensor.
+
+This API is deprecated since API version 9. You are advised to use [sensor.once.HEART_BEAT_RATE](#heart_beat_rate9) instead.
+
+**Required permissions**: ohos.permission.HEART_RATE
+
+**System capability**: SystemCapability.Sensors.Sensor
+
+**Parameters**
+
+| Name | Type | Mandatory | Description |
+| -------- | ------------------------------------------------------- | --------- | ------------------------------------------------------------ |
+| type | [SensorType](#sensortype) | Yes | Type of the sensor to subscribe to, which is **SENSOR_TYPE_ID_HEART_RATE**. |
+| callback | Callback<[HeartRateResponse](#heartrateresponse)> | Yes | One-shot callback used to return the heart rate sensor data. The reported data type in the callback is **HeartRateResponse**. |
+
+### HEART_BEAT_RATE9+
+
+once(type: SensorType.SENSOR_TYPE_ID_HEART_RATE, callback: Callback<HeartRateResponse>): void
+
+Subscribes to only one data change of the heart rate sensor.
+
+**Required permissions**: ohos.permission.HEART_RATE
+
+**System capability**: SystemCapability.Sensors.Sensor
+
+**Parameters**
+
+| Name | Type | Mandatory | Description |
+| -------- | ------------------------------------------------------- | --------- | ------------------------------------------------------------ |
+| type | [SensorType](#sensortype) | Yes | Type of the sensor to subscribe to, which is **SENSOR_TYPE_ID_HEART_BEAT_RATE**. |
+| callback | Callback<[HeartRateResponse](#heartrateresponse)> | Yes | One-shot callback used to return the heart rate sensor data. The reported data type in the callback is **HeartRateResponse**. |
+
+**Example**
+
+ ```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
+
+Subscribes to only one data change of the wear detection sensor.
+
+This API is deprecated since API version 9. You are advised to use [sensor.once.WEAR_DETECTION](#wear_detection9-1) instead.
+
+**System capability**: SystemCapability.Sensors.Sensor
+
+**Parameters**
+
+| Name | Type | Mandatory | Description |
+| -------- | ------------------------------------------------------------ | --------- | ------------------------------------------------------------ |
+| type | [SensorType](#sensortype) | Yes | Type of the sensor to subscribe to, which is **SENSOR_TYPE_ID_WEAR_DETECTION**. |
+| callback | Callback<[WearDetectionResponse](#weardetectionresponse)> | Yes | One-shot callback used to return the wear detection sensor data. The reported data type in the callback is **WearDetectionResponse**. |
+
+**Example**
+
+ ```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
+
+Unsubscribes from sensor data changes.
+
+This API is deprecated since API version 9. You are advised to use [sensor.off.ACCELEROMETER](#accelerometer9-2) instead.
+
+**Required permissions**: ohos.permission.ACCELEROMETER
+
+**System capability**: SystemCapability.Sensors.Sensor
+
+**Parameters**
+
+| Name | Type | Mandatory | Description |
+| -------- | ------------------------------------------------------------ | --------- | ------------------------------------------------------------ |
+| type | [SensorType](#sensortype) | Yes | Type of the sensor to unsubscribe from, which is **SENSOR_TYPE_ID_ACCELEROMETER**. |
+| callback | Callback<[AccelerometerResponse](#accelerometerresponse)> | Yes | Callback used to return the acceleration sensor data. The reported data type in the callback is **AccelerometerResponse**. |
+
+**Example**
+
+```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
+
+Unsubscribes from sensor data changes.
+
+This API is deprecated since API version 9. You are advised to use [sensor.off.ACCELEROMETER_UNCALIBRATED](#accelerometer_uncalibrated9-2) instead.
+
+**Required permissions**: ohos.permission.ACCELEROMETER
+
+**System capability**: SystemCapability.Sensors.Sensor
+
+**Parameters**
+
+| Name | Type | Mandatory | Description |
+| -------- | ------------------------------------------------------------ | --------- | ------------------------------------------------------------ |
+| type | [SensorType](#sensortype) | Yes | Type of the sensor to unsubscribe from, which is **SENSOR_TYPE_ID_ACCELEROMETER_UNCALIBRATED**. |
+| callback | Callback<[AccelerometerUncalibratedResponse](#accelerometeruncalibratedresponse)> | Yes | Callback used to return the uncalibrated acceleration sensor data. The reported data type in the callback is **AccelerometerUncalibratedResponse**. |
+
+**Example**
+
+```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
+
+Unsubscribes from sensor data changes.
+
+This API is deprecated since API version 9. You are advised to use [sensor.off.AMBIENT_LIGHT](#ambient_light9-2) instead.
+
+**System capability**: SystemCapability.Sensors.Sensor
+
+**Parameters**
+
+| Name | Type | Mandatory | Description |
+| -------- | ----------------------------------------------- | --------- | ------------------------------------------------------------ |
+| type | [SensorType](#sensortype) | Yes | Type of the sensor to unsubscribe from, which is **SENSOR_TYPE_ID_AMBIENT_LIGHT**. |
+| callback | Callback<[LightResponse](#lightresponse)> | Yes | Callback used to return the ambient light sensor data. The reported data type in the callback is **LightResponse**. |
+
+**Example**
+
+```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
+
+Unsubscribes from sensor data changes.
+
+This API is deprecated since API version 9. You are advised to use [sensor.off.AMBIENT_TEMPERATURE](#ambient_temperature9-2) instead.
+
+**System capability**: SystemCapability.Sensors.Sensor
+
+**Parameters**
+
+| Name | Type | Mandatory | Description |
+| -------- | ------------------------------------------------------------ | --------- | ------------------------------------------------------------ |
+| type | [SensorType](#sensortype) | Yes | Type of the sensor to unsubscribe from, which is **SENSOR_TYPE_ID_AMBIENT_TEMPERATURE**. |
+| callback | Callback<[AmbientTemperatureResponse](#ambienttemperatureresponse)> | Yes | Callback used to return the ambient temperature sensor data. The reported data type in the callback is **AmbientTemperatureResponse**. |
+
+**Example**
+
+```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
+
+Unsubscribes from sensor data changes.
+
+This API is deprecated since API version 9. You are advised to use [sensor.off.BAROMETER](#barometer9-2) instead.
+
+**System capability**: SystemCapability.Sensors.Sensor
+
+**Parameters**
+
+| Name | Type | Mandatory | Description |
+| -------- | ------------------------------------------------------- | --------- | ------------------------------------------------------------ |
+| type | [SensorType](#sensortype) | Yes | Type of the sensor to unsubscribe from, which is **SENSOR_TYPE_ID_BAROMETER**. |
+| callback | Callback<[BarometerResponse](#barometerresponse)> | Yes | Callback used to return the barometer sensor data. The reported data type in the callback is **BarometerResponse**. |
+
+**Example**
+
+```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
+
+Unsubscribes from sensor data changes.
+
+This API is deprecated since API version 9. You are advised to use [sensor.off.GRAVITY](#gravity9-2) instead.
+
+**System capability**: SystemCapability.Sensors.Sensor
+
+**Parameters**
+
+| Name | Type | Mandatory | Description |
+| -------- | --------------------------------------------------- | --------- | ------------------------------------------------------------ |
+| type | [SensorType](#sensortype) | Yes | Type of the sensor to unsubscribe from, which is **SENSOR_TYPE_ID_GRAVITY**. |
+| callback | Callback<[GravityResponse](#gravityresponse)> | Yes | Callback used to return the gravity sensor data. The reported data type in the callback is **GravityResponse**. |
+
+**Example**
+
+```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
+
+Unsubscribes from sensor data changes.
+
+This API is deprecated since API version 9. You are advised to use [sensor.off.GYROSCOPE](#gyroscope9-2) instead.
+
+**Required permissions**: ohos.permission.GYROSCOPE
+
+**System capability**: SystemCapability.Sensors.Sensor
+
+**Parameters**
+
+| Name | Type | Mandatory | Description |
+| -------- | ------------------------------------------------------- | --------- | ------------------------------------------------------------ |
+| type | [SensorType](#sensortype) | Yes | Type of the sensor to unsubscribe from, which is **SENSOR_TYPE_ID_GYROSCOPE**. |
+| callback | Callback<[GyroscopeResponse](#gyroscoperesponse)> | Yes | Callback used to return the gyroscope sensor data. The reported data type in the callback is **GyroscopeResponse**. |
+
+**Example**
+
+```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
+
+Unsubscribes from sensor data changes.
+
+This API is deprecated since API version 9. You are advised to use [sensor.off.GYROSCOPE_UNCALIBRATED](#gyroscope_uncalibrated9-2) instead.
+
+**Required permissions**: ohos.permission.GYROSCOPE
+
+**System capability**: SystemCapability.Sensors.Sensor
+
+**Parameters**
+
+| Name | Type | Mandatory | Description |
+| -------- | ------------------------------------------------------------ | --------- | ------------------------------------------------------------ |
+| type | [SensorType](#sensortype) | Yes | Type of the sensor to unsubscribe from, which is **SENSOR_TYPE_ID_GYROSCOPE_UNCALIBRATED**. |
+| callback | Callback<[GyroscopeUncalibratedResponse](#gyroscopeuncalibratedresponse)> | Yes | Callback used to return the uncalibrated gyroscope sensor data. The reported data type in the callback is **GyroscopeUncalibratedResponse**. |
+
+**Example**
+
+```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
+
+Unsubscribes from sensor data changes.
+
+This API is deprecated since API version 9. You are advised to use [sensor.off.HALL](#hall9-2) instead.
+
+**System capability**: SystemCapability.Sensors.Sensor
+
+**Parameters**
+
+| Name | Type | Mandatory | Description |
+| -------- | --------------------------------------------- | --------- | ------------------------------------------------------------ |
+| type | [SensorType](#sensortype) | Yes | Type of the sensor to unsubscribe from, which is **SENSOR_TYPE_ID_HALL**. |
+| callback | Callback<[HallResponse](#hallresponse)> | Yes | Callback used to return the Hall effect sensor data. The reported data type in the callback is **HallResponse**. |
+
+**Example**
+
+```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
+
+Unsubscribes from sensor data changes.
+
+This API is deprecated since API version 9. You are advised to use [sensor.off.HEART_BEAT_RATE](#heart_beat_rate9) instead.
+
+**Required permissions**: ohos.permission.HEALTH_DATA
+
+**System capability**: SystemCapability.Sensors.Sensor
+
+**Parameters**
+
+| Name | Type | Mandatory | Description |
+| -------- | ------------------------------------------------------- | --------- | ------------------------------------------------------------ |
+| type | [SensorType](#sensortype) | Yes | Type of the sensor to unsubscribe from, which is **SENSOR_TYPE_ID_HEART_RATE**. |
+| callback | Callback<[HeartRateResponse](#heartrateresponse)> | Yes | One-shot callback used to return the heart rate sensor data. The reported data type in the callback is **HeartRateResponse**. |
+
+### HEART_BEAT_RATE9+
+
+off(type: SensorType.SENSOR_TYPE_ID_HEART_RATE, callback?: Callback<HeartRateResponse>): void
+
+Unsubscribes from sensor data changes.
+
+**Required permissions**: ohos.permission.HEALTH_DATA
+
+**System capability**: SystemCapability.Sensors.Sensor
+
+**Parameters**
+
+| Name | Type | Mandatory | Description |
+| -------- | ------------------------------------------------------- | --------- | ------------------------------------------------------------ |
+| type | [SensorType](#sensortype) | Yes | Type of the sensor to unsubscribe from, which is **SENSOR_TYPE_ID_HEART_BEAT_RATE**. |
+| callback | Callback<[HeartRateResponse](#heartrateresponse)> | Yes | One-shot callback used to return the heart rate sensor data. The reported data type in the callback is **HeartRateResponse**. |
+
+**Example**
+
+```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
+
+Unsubscribes from sensor data changes.
+
+This API is deprecated since API version 9. You are advised to use [sensor.off.HUMIDITY](#humidity9-2) instead.
+
+**System capability**: SystemCapability.Sensors.Sensor
+
+**Parameters**
+
+| Name | Type | Mandatory | Description |
+| -------- | ----------------------------------------------------- | --------- | ------------------------------------------------------------ |
+| type | [SensorType](#sensortype) | Yes | Type of the sensor to unsubscribe from, which is **SENSOR_TYPE_ID_HUMIDITY**. |
+| callback | Callback<[HumidityResponse](#humidityresponse)> | Yes | Callback used to return the humidity sensor data. The reported data type in the callback is **HumidityResponse**. |
+
+**Example**
+
+```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
+
+Unsubscribes from sensor data changes.
+
+This API is deprecated since API version 9. You are advised to use [sensor.off.LINEAR_ACCELEROMETER](#linear_accelerometer9) instead.
+
+**Required permissions**: ohos.permission.ACCELEROMETER
+
+**System capability**: SystemCapability.Sensors.Sensor
+
+**Parameters**
+
+| Name | Type | Mandatory | Description |
+| -------- | ------------------------------------------------------------ | --------- | ------------------------------------------------------------ |
+| type | [SensorType](#sensortype) | Yes | Type of the sensor to unsubscribe from, which is **SENSOR_TYPE_ID_LINEAR_ACCELERATION**. |
+| callback | Callback<[LinearAccelerometerResponse](#linearaccelerometerresponse)> | Yes | Callback used to return the linear acceleration sensor data. The reported data type in the callback is **LinearAccelerometerResponse**. |
+
+### LINEAR_ACCELEROMETER9+
+
+off(type: SensorType.SENSOR_TYPE_ID_LINEAR_ACCELERATION,callback?:Callback<LinearAccelerometerResponse>): void
+
+Unsubscribes from sensor data changes.
+
+**Required permissions**: ohos.permission.ACCELEROMETER
+
+**System capability**: SystemCapability.Sensors.Sensor
+
+**Parameters**
+
+| Name | Type | Mandatory | Description |
+| -------- | ------------------------------------------------------------ | --------- | ------------------------------------------------------------ |
+| type | [SensorType](#sensortype) | Yes | Type of the sensor to unsubscribe from, which is **SENSOR_TYPE_ID_LINEAR_ACCELEROMETER**. |
+| callback | Callback<[LinearAccelerometerResponse](#linearaccelerometerresponse)> | Yes | Callback used to return the acceleration sensor data. The reported data type in the callback is **LinearAccelerometerResponse**. |
+
+**Example**
+
+```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
+
+Unsubscribes from sensor data changes.
+
+This API is deprecated since API version 9. You are advised to use [sensor.off.MAGNETIC_FIELD](#magnetic_field9-2) instead.
+
+**System capability**: SystemCapability.Sensors.Sensor
+
+**Parameters**
+
+| Name | Type | Mandatory | Description |
+| ---------------- | ------------------------------------------------------------ | --------- | ------------------------------------------------------------ |
+| type | [SensorType](#sensortype) | Yes | Type of the sensor to unsubscribe from, which is **SENSOR_TYPE_ID_MAGNETIC_FIELD**. |
+| callbackcallback | Callback<[MagneticFieldResponse](#magneticfieldresponse)> | Yes | Callback used to return the magnetic field sensor data. The reported data type in the callback is **MagneticFieldResponse**. |
+
+**Example**
+
+```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)
+
+ off(type: SensorType.SENSOR_TYPE_ID_MAGNETIC_FIELD_UNCALIBRATED, callback?: Callback<MagneticFieldUncalibratedResponse>): void
+
+Unsubscribes from sensor data changes.
+
+This API is deprecated since API version 9. You are advised to use [sensor.off.MAGNETIC_FIELD_UNCALIBRATED](#magnetic_field_uncalibrated9-2) instead.
+
+**System capability**: SystemCapability.Sensors.Sensor
+
+**Parameters**
+
+| Name | Type | Mandatory | Description |
+| -------- | ------------------------------------------------------------ | --------- | ------------------------------------------------------------ |
+| type | [SensorType](#sensortype) | Yes | Type of the sensor to unsubscribe from, which is **SENSOR_TYPE_ID_MAGNETIC_FIELD_UNCALIBRATED**. |
+| callback | Callback<[MagneticFieldUncalibratedResponse](#magneticfielduncalibratedresponse)> | Yes | Callback used to return the uncalibrated magnetic field sensor data. The reported data type in the callback is **MagneticFieldUncalibratedResponse**. |
+
+**Example**
+
+```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)
+
+ off(type: SensorType.SENSOR_TYPE_ID_ORIENTATION, callback?: Callback<OrientationResponse>): void
+
+Unsubscribes from sensor data changes.
+
+This API is deprecated since API version 9. You are advised to use [sensor.off.ORIENTATION](#orientation9-2) instead.
+
+**System capability**: SystemCapability.Sensors.Sensor
+
+**Parameters**
+
+| Name | Type | Mandatory | Description |
+| -------- | ----------------------------------------------------------- | --------- | ------------------------------------------------------------ |
+| type | [SensorType](#sensortype) | Yes | Type of the sensor to unsubscribe from, which is **SENSOR_TYPE_ID_ORIENTATION**. |
+| callback | Callback<[OrientationResponse](#orientationresponse)> | Yes | Callback used to return the orientation sensor data. The reported data type in the callback is **OrientationResponse**. |
+
+**Example**
+
+```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)
+
+off(type: SensorType.SENSOR_TYPE_ID_PEDOMETER, callback?: Callback<PedometerResponse>): void
+
+Unsubscribes from sensor data changes.
+
+This API is deprecated since API version 9. You are advised to use [sensor.off.PEDOMETER](#pedometer9-2) instead.
+
+**Required permissions**: ohos.permission.ACTIVITY_MOTION
+
+**System capability**: SystemCapability.Sensors.Sensor
+
+**Parameters**
+
+| Name | Type | Mandatory | Description |
+| -------- | ------------------------------------------------------- | --------- | ------------------------------------------------------------ |
+| type | [SensorType](#sensortype) | Yes | Type of the sensor to unsubscribe from, which is **SENSOR_TYPE_ID_PEDOMETER**. |
+| callback | Callback<[PedometerResponse](#pedometerresponse)> | Yes | Callback used to return the pedometer sensor data. The reported data type in the callback is **PedometerResponse**. |
+
+**Example**
+
+```js
+function callback(data) {
+ console.info('Steps: ' + data.steps);
+}
+sensor.off(sensor.SensorType.SENSOR_TYPE_ID_PEDOMETER, callback);
+
+```
+
+### PEDOMETER_DETECTION(deprecated)
+
+off(type: SensorType.SENSOR_TYPE_ID_PEDOMETER_DETECTION, callback?: Callback<PedometerDetectionResponse>): void
+
+Unsubscribes from sensor data changes.
+
+This API is deprecated since API version 9. You are advised to use [sensor.off.PEDOMETER_DETECTION](#pedometer_detection9-2) instead.
+
+**Required permissions**: ohos.permission.ACTIVITY_MOTION
+
+**System capability**: SystemCapability.Sensors.Sensor
+
+**Parameters**
+
+| Name | Type | Mandatory | Description |
+| -------- | ------------------------------------------------------------ | --------- | ------------------------------------------------------------ |
+| type | [SensorType](#sensortype) | Yes | Type of the sensor to unsubscribe from, which is **SENSOR_TYPE_ID_PEDOMETER_DETECTION**. |
+| callback | Callback<[PedometerDetectionResponse](#pedometerdetectionresponse)> | Yes | Callback used to return the pedometer detection sensor data. The reported data type in the callback is **PedometerDetectionResponse**. |
+
+**Example**
+
+```js
+function callback(data) {
+ console.info('Scalar data: ' + data.scalar);
+}
+sensor.off(sensor.SensorType.SENSOR_TYPE_ID_PEDOMETER_DETECTION, callback);
+```
+
+### PROXIMITY(deprecated)
+
+off(type: SensorType.SENSOR_TYPE_ID_PROXIMITY, callback?: Callback<ProximityResponse>): void
+
+Unsubscribes from sensor data changes.
+
+This API is deprecated since API version 9. You are advised to use [sensor.off.PROXIMITY](#proximity9-2) instead.
+
+**System capability**: SystemCapability.Sensors.Sensor
+
+**Parameters**
+
+| Name | Type | Mandatory | Description |
+| -------- | ------------------------------------------------------- | --------- | ------------------------------------------------------------ |
+| type | [SensorType](#sensortype) | Yes | Type of the sensor to unsubscribe from, which is **SENSOR_TYPE_ID_PROXIMITY**. |
+| callback | Callback<[ProximityResponse](#proximityresponse)> | Yes | Callback used to return the proximity sensor data. The reported data type in the callback is **ProximityResponse**. |
+
+**Example**
+
+```js
+function callback(data) {
+ console.info('Distance: ' + data.distance);
+}
+sensor.off(sensor.SensorType.SENSOR_TYPE_ID_PROXIMITY, callback);
+```
+
+### ROTATION_VECTOR(deprecated)
+
+off(type: SensorType.SENSOR_TYPE_ID_ROTATION_VECTOR, callback?: Callback<RotationVectorResponse>): void
+
+Unsubscribes from sensor data changes.
+
+This API is deprecated since API version 9. You are advised to use [sensor.off.ROTATION_VECTOR](#rotation_vector9-2) instead.
+
+**System capability**: SystemCapability.Sensors.Sensor
+
+**Parameters**
+
+| Name | Type | Mandatory | Description |
+| -------- | ------------------------------------------------------------ | --------- | ------------------------------------------------------------ |
+| type | [SensorType](#sensortype) | Yes | Type of the sensor to unsubscribe from, which is **SENSOR_TYPE_ID_ROTATION_VECTOR**. |
+| callback | Callback<[RotationVectorResponse](#rotationvectorresponse)> | Yes | Callback used to return the rotation vector sensor data. The reported data type in the callback is **RotationVectorResponse**. |
+
+**Example**
+
+```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);
+
+```
+
+### SIGNIFICANT_MOTION(deprecated)
+
+off(type: SensorType.SENSOR_TYPE_ID_SIGNIFICANT_MOTION, callback?: Callback<SignificantMotionResponse>): void
+
+Unsubscribes from sensor data changes.
+
+This API is deprecated since API version 9. You are advised to use [sensor.off.SIGNIFICANT_MOTION](#significant_motion9-2) instead.
+
+**System capability**: SystemCapability.Sensors.Sensor
+
+**Parameters**
+
+| Name | Type | Mandatory | Description |
+| -------- | ------------------------------------------------------------ | --------- | ------------------------------------------------------------ |
+| type | [SensorType](#sensortype) | Yes | Type of the sensor to unsubscribe from, which is **SENSOR_TYPE_ID_SIGNIFICANT_MOTION**. |
+| callback | Callback<[SignificantMotionResponse](#significantmotionresponse)> | Yes | Callback used to return the significant motion sensor data. The reported data type in the callback is **SignificantMotionResponse**. |
+
+**Example**
+
+```js
+function callback(data) {
+ console.info('Scalar data: ' + data.scalar);
+}
+sensor.off(sensor.SensorType.SENSOR_TYPE_ID_SIGNIFICANT_MOTION, callback);
+
+```
+
+### WEAR_DETECTION(deprecated)
+
+off(type: SensorType.SENSOR_TYPE_ID_WEAR_DETECTION, callback?: Callback<WearDetectionResponse>): void
+
+Unsubscribes from sensor data changes.
+
+This API is deprecated since API version 9. You are advised to use [sensor.off.WEAR_DETECTION](#wear_detection9-2) instead.
+
+**System capability**: SystemCapability.Sensors.Sensor
+
+**Parameters**
+
+| Name | Type | Mandatory | Description |
+| -------- | ------------------------------------------------------------ | --------- | ------------------------------------------------------------ |
+| type | [SensorType](#sensortype) | Yes | Type of the sensor to unsubscribe from, which is **SENSOR_TYPE_ID_WEAR_DETECTION**. |
+| callback | Callback<[WearDetectionResponse](#weardetectionresponse)> | Yes | Callback used to return the wear detection sensor data. The reported data type in the callback is **WearDetectionResponse**. |
+
+**Example**
+
+```js
+function accCallback(data) {
+ console.info('Wear status: ' + data.value);
+}
+sensor.off(sensor.SensorType.SENSOR_TYPE_ID_WEAR_DETECTION, accCallback);
+
+```
+
+## sensor.transformCoordinateSystem(deprecated)
+
+transformCoordinateSystem(inRotationVector: Array<number>, coordinates: CoordinatesOptions, callback: AsyncCallback<Array<number>>): void
+
+Rotates a rotation vector so that it can represent the coordinate system in different ways. This API uses an asynchronous callback to return the result.
+
+This API is deprecated since API version 9. You are advised to use [sensor.transformRotationMatrix](#sensortransformrotationmatrix9) instead.
+
+**System capability**: SystemCapability.Sensors.Sensor
+
+**Parameters**
+
+| Name | Type | Mandatory | Description |
+| ---------------- | ----------------------------------------- | --------- | ------------------------------------------------------------ |
+| inRotationVector | Array<number> | Yes | Rotation vector to rotate. |
+| coordinates | [CoordinatesOptions](#coordinatesoptions) | Yes | Direction of the coordinate system. |
+| callback | AsyncCallback<Array<number>> | Yes | Callback used to return the rotation vector after being rotated. |
+
+**Example**
+
+```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]);
+ }
+ })
+
+```
+
+## sensor.transformCoordinateSystem(deprecated)
+
+transformCoordinateSystem(inRotationVector: Array<number>, coordinates: CoordinatesOptions): Promise<Array<number>>
+
+Rotates a rotation vector so that it can represent the coordinate system in different ways. This API uses a promise to return the result.
+
+This API is deprecated since API version 9. You are advised to use [sensor.transformRotationMatrix](#sensortransformrotationmatrix9-1) instead.
+
+**System capability**: SystemCapability.Sensors.Sensor
+
+**Parameters**
+
+| Name | Type | Mandatory | Description |
+| ---------------- | ----------------------------------------- | --------- | ----------------------------------- |
+| inRotationVector | Array<number> | Yes | Rotation vector to rotate. |
+| coordinates | [CoordinatesOptions](#coordinatesoptions) | Yes | Direction of the coordinate system. |
+
+**Return value**
+
+| Type | Description |
+| ---------------------------------- | ------------------------------------------------------------ |
+| Promise<Array<number>> | Promise used to return the rotation vector after being rotated. |
+
+**Example**
+
+```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");
+})
+
+```
+
+## sensor.getGeomagneticField(deprecated)
+
+getGeomagneticField(locationOptions: LocationOptions, timeMillis: number, callback: AsyncCallback<GeomagneticResponse>): void
+
+Obtains the geomagnetic field of a geographic location. This API uses an asynchronous callback to return the result.
+
+This API is deprecated since API version 9. You are advised to use [sensor.getGeomagneticInfo](#sensorgetgeomagneticinfo9) instead.
+
+**System capability**: SystemCapability.Sensors.Sensor
+
+**Parameters**
+
+| Name | Type | Mandatory | Description |
+| --------------- | ------------------------------------------------------------ | --------- | ------------------------------------------------------------ |
+| locationOptions | [LocationOptions](#locationoptions) | Yes | Geographic location. |
+| timeMillis | number | Yes | Time for obtaining the magnetic declination, in milliseconds. |
+| callback | AsyncCallback<[GeomagneticResponse](#geomagneticresponse)> | Yes | Callback used to return the geomagnetic field. |
+
+**Example**
+
+```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>
+
+Obtains the geomagnetic field of a geographic location. This API uses a promise to return the result.
+
+This API is deprecated since API version 9. You are advised to use [sensor.getGeomagneticInfo](#sensorgetgeomagneticinfo9-1) instead.
+
+**System capability**: SystemCapability.Sensors.Sensor
+
+**Parameters**
+
+| Name | Type | Mandatory | Description |
+| --------------- | ----------------------------------- | --------- | ------------------------------------------------------------ |
+| locationOptions | [LocationOptions](#locationoptions) | Yes | Geographic location. |
+| timeMillis | number | Yes | Time for obtaining the magnetic declination, in milliseconds. |
+
+**Return value**
+
+| Type | Description |
+| ---------------------------------------------------------- | --------------------------------------------- |
+| Promise<[GeomagneticResponse](#geomagneticresponse)> | Promise used to return the geomagnetic field. |
+
+**Example**
+
+ ```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.');
+ })
+
+ ```
+
+## sensor.getAltitude(deprecated)
+
+getAltitude(seaPressure: number, currentPressure: number, callback: AsyncCallback<number>): void
+
+Obtains the altitude at which the device is located based on the sea-level atmospheric pressure and the current atmospheric pressure. This API uses an asynchronous callback to return the result.
+
+This API is deprecated since API version 9. You are advised to use [sensor.getDeviceAltitude](#sensorgetdevicealtitude9) instead.
+
+**System capability**: SystemCapability.Sensors.Sensor
+
+**Parameters**
+
+| Name | Type | Mandatory | Description |
+| --------------- | --------------------------- | --------- | ------------------------------------------------------------ |
+| seaPressure | number | Yes | Sea-level atmospheric pressure, in hPa. |
+| currentPressure | number | Yes | Atmospheric pressure at the altitude where the device is located, in hPa. |
+| callback | AsyncCallback<number> | Yes | Callback used to return the altitude, in meters. |
+
+**Example**
+
+ ```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);
+ });
+
+ ```
+
+## sensor.getAltitude(deprecated)
+
+getAltitude(seaPressure: number, currentPressure: number): Promise<number>
+
+Obtains the altitude at which the device is located based on the sea-level atmospheric pressure and the current atmospheric pressure. This API uses a promise to return the result.
+
+This API is deprecated since API version 9. You are advised to use [sensor.getDeviceAltitude](#sensorgetdevicealtitude9-1) instead.
+
+**System capability**: SystemCapability.Sensors.Sensor
+
+**Parameters**
+
+| Name | Type | Mandatory | Description |
+| --------------- | ------ | --------- | ------------------------------------------------------------ |
+| seaPressure | number | Yes | Sea-level atmospheric pressure, in hPa. |
+| currentPressure | number | Yes | Atmospheric pressure at the altitude where the device is located, in hPa. |
+
+**Return value**
+
+| Type | Description |
+| --------------------- | ----------------------------------------------- |
+| Promise<number> | Promise used to return the altitude, in meters. |
+
+**Example**
+
+ ```js
+ const promise = sensor.getAltitude(0, 200);
+ promise.then((data) => {
+ console.info(' sensor_getAltitude_Promise success', data);
+ }).catch((err) => {
+ console.error("Operation failed");
+ })
+
+ ```
+
+
+## sensor.getGeomagneticDip(deprecated)
+
+getGeomagneticDip(inclinationMatrix: Array<number>, callback: AsyncCallback<number>): void
+
+Obtains the magnetic dip based on the inclination matrix. This API uses an asynchronous callback to return the result.
+
+This API is deprecated since API version 9. You are advised to use [sensor.getInclination](#sensorgetinclination9) instead.
+
+**System capability**: SystemCapability.Sensors.Sensor
+
+**Parameters**
+
+| Name | Type | Mandatory | Description |
+| ----------------- | --------------------------- | --------- | ----------------------------------------------------- |
+| inclinationMatrix | Array<number> | Yes | Inclination matrix. |
+| callback | AsyncCallback<number> | Yes | Callback used to return the magnetic dip, in radians. |
+
+**Example**
+
+ ```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);
+ })
+ ```
+
+## sensor.getGeomagneticDip(deprecated)
+
+getGeomagneticDip(inclinationMatrix: Array<number>): Promise<number>
+
+Obtains the magnetic dip based on the inclination matrix. This API uses a promise to return the result.
+
+This API is deprecated since API version 9. You are advised to use [sensor.getInclination](#sensorgetinclination9-1) instead.
+
+**System capability**: SystemCapability.Sensors.Sensor
+
+**Parameters**
+
+| Name | Type | Mandatory | Description |
+| ----------------- | ------------------- | --------- | ------------------- |
+| inclinationMatrix | Array<number> | Yes | Inclination matrix. |
+
+**Return value**
+
+| Type | Description |
+| --------------------- | ---------------------------------------------------- |
+| Promise<number> | Promise used to return the magnetic dip, in radians. |
+
+**Example**
+
+ ```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)
+
+getAngleModify(currentRotationMatrix: Array<number>, preRotationMatrix: Array<number>, callback: AsyncCallback<Array<number>>): void
+
+Obtains the angle change between two rotation matrices. This API uses an asynchronous callback to return the result.
+
+This API is deprecated since API version 9. You are advised to use [sensor.getAngleVariation](#sensorgetanglevariation9) instead.
+
+**System capability**: SystemCapability.Sensors.Sensor
+
+**Parameters**
+
+| Name | Type | Mandatory | Description |
+| --------------------- | ---------------------------------------- | --------- | ------------------------------------------------------------ |
+| currentRotationMatrix | Array<number> | Yes | Current rotation matrix. |
+| preRotationMatrix | Array<number> | Yes | The other rotation matrix. |
+| callback | AsyncCallback<Array<number>> | Yes | Callback used to return the angle change around the z, x, and y axes. |
+
+**Example**
+
+ ```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]);
+ }
+ })
+
+ ```
+
+
+## sensor. getAngleModify(deprecated)
+
+getAngleModify(currentRotationMatrix: Array<number>, preRotationMatrix: Array<number>): Promise<Array<number>>
+
+Obtains the angle change between two rotation matrices. This API uses a promise to return the result.
+
+This API is deprecated since API version 9. You are advised to use [sensor.getAngleVariation](#sensorgetanglevariation9-1) instead.
+
+**System capability**: SystemCapability.Sensors.Sensor
+
+**Parameters**
+
+| Name | Type | Mandatory | Description |
+| --------------------- | ------------------- | --------- | -------------------------- |
+| currentRotationMatrix | Array<number> | Yes | Current rotation matrix. |
+| preRotationMatrix | Array<number> | Yes | The other rotation matrix. |
+
+**Return value**
+
+| Type | Description |
+| ---------------------------------- | ------------------------------------------------------------ |
+| Promise<Array<number>> | Promise used to return the angle change around the z, x, and y axes. |
+
+**Example**
+
+ ```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);
+ })
+ ```
+
+
+## sensor.createRotationMatrix(deprecated)
+
+createRotationMatrix(rotationVector: Array<number>, callback: AsyncCallback<Array<number>>): void
+
+Converts a rotation vector into a rotation matrix. This API uses an asynchronous callback to return the result.
+
+This API is deprecated since API version 9. You are advised to use [sensor.getRotationMatrix](#sensorgetrotationmatrix9) instead.
+
+**System capability**: SystemCapability.Sensors.Sensor
+
+**Parameters**
+
+| Name | Type | Mandatory | Description |
+| -------------- | ---------------------------------------- | --------- | -------------------------------------------- |
+| rotationVector | Array<number> | Yes | Rotation vector to convert. |
+| callback | AsyncCallback<Array<number>> | Yes | Callback used to return the rotation matrix. |
+
+**Example**
+
+ ```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]);
+ }
+ })
+
+ ```
+
+
+## sensor.createRotationMatrix(deprecated)
+
+createRotationMatrix(rotationVector: Array<number>): Promise<Array<number>>
+
+Converts a rotation vector into a rotation matrix. This API uses a promise to return the result.
+
+This API is deprecated since API version 9. You are advised to use [sensor.getRotationMatrix](#sensorgetrotationmatrix9-1) instead.
+
+**System capability**: SystemCapability.Sensors.Sensor
+
+**Parameters**
+
+| Name | Type | Mandatory | Description |
+| -------------- | ------------------- | --------- | --------------------------- |
+| rotationVector | Array<number> | Yes | Rotation vector to convert. |
+
+**Return value**
+
+| Type | Description |
+| ---------------------------------- | ------------------------------------------- |
+| Promise<Array<number>> | Promise used to return the rotation matrix. |
+
+**Example**
+
+ ```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);
+ })
+
+ ```
+
+
+## sensor.createQuaternion(deprecated)
+
+createQuaternion(rotationVector: Array<number>, callback: AsyncCallback<Array<number>>): void
+
+Converts a rotation vector into a quaternion. This API uses an asynchronous callback to return the result.
+
+This API is deprecated since API version 9. You are advised to use [sensor.getQuaternion](#sensorgetquaternion9) instead.
+
+**System capability**: SystemCapability.Sensors.Sensor
+
+**Parameters**
+
+| Name | Type | Mandatory | Description |
+| -------------- | ---------------------------------------- | --------- | --------------------------------------- |
+| rotationVector | Array<number> | Yes | Rotation vector to convert. |
+| callback | AsyncCallback<Array<number>> | Yes | Callback used to return the quaternion. |
+
+**Example**
+
+ ```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]);
+ }
+ })
+
+ ```
+
+
+## sensor.createQuaternion(deprecated)
+
+createQuaternion(rotationVector: Array<number>): Promise<Array<number>>
+
+Converts a rotation vector into a quaternion. This API uses a promise to return the result.
+
+This API is deprecated since API version 9. You are advised to use [sensor.getQuaternion](#sensorgetquaternion9-1) instead.
+
+**System capability**: SystemCapability.Sensors.Sensor
+
+**Parameters**
+
+| Name | Type | Mandatory | Description |
+| -------------- | ------------------- | --------- | --------------------------- |
+| rotationVector | Array<number> | Yes | Rotation vector to convert. |
+
+**Return value**
+
+| Type | Description |
+| ---------------------------------- | -------------------------------------- |
+| Promise<Array<number>> | Promise used to return the quaternion. |
+
+**Example**
+
+ ```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');
+ })
+ ```
+
+
+## sensor.getDirection(deprecated)
+
+getDirection(rotationMatrix: Array<number>, callback: AsyncCallback<Array<number>>): void
+
+Obtains the device direction based on the rotation matrix. This API uses an asynchronous callback to return the result.
+
+This API is deprecated since API version 9. You are advised to use [sensor.getOrientation](#sensorgetorientation9) instead.
+
+**System capability**: SystemCapability.Sensors.Sensor
+
+**Parameters**
+
+| Name | Type | Mandatory | Description |
+| -------------- | ---------------------------------------- | --------- | ------------------------------------------------------------ |
+| rotationMatrix | Array<number> | Yes | Rotation matrix. |
+| callback | AsyncCallback<Array<number>> | Yes | Callback used to return the rotation angle around the z, x, and y axes. |
+
+**Example**
+
+ ```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]);
+ }
+ })
+
+ ```
+
+
+## sensor.getDirection(deprecated)
+
+getDirection(rotationMatrix: Array<number>): Promise<Array<number>>
+
+Obtains the device direction based on the rotation matrix. This API uses a promise to return the result.
+
+This API is deprecated since API version 9. You are advised to use [sensor.getOrientation](#sensorgetorientation9-1) instead.
+
+**System capability**: SystemCapability.Sensors.Sensor
+
+**Parameters**
+
+| Name | Type | Mandatory | Description |
+| -------------- | ------------------- | --------- | ---------------- |
+| rotationMatrix | Array<number> | Yes | Rotation matrix. |
+
+**Return value**
+
+| Type | Description |
+| ---------------------------------- | ------------------------------------------------------------ |
+| Promise<Array<number>> | Promise used to return the rotation angle around the z, x, and y axes. |
+
+**Example**
+
+ ```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');
+ })
+ ```
+
+
+## sensor.createRotationMatrix(deprecated)
+
+createRotationMatrix(gravity: Array<number>, geomagnetic: Array<number>, callback: AsyncCallback<RotationMatrixResponse>): void
+
+Creates a rotation matrix based on the gravity vector and geomagnetic vector. This API uses an asynchronous callback to return the result.
+
+This API is deprecated since API version 9. You are advised to use [sensor.getRotationMatrix](#sensorgetrotationmatrix9-2) instead.
+
+**System capability**: SystemCapability.Sensors.Sensor
+
+**Parameters**
+
+| Name | Type | Mandatory | Description |
+| ----------- | ------------------------------------------------------------ | --------- | -------------------------------------------- |
+| gravity | Array<number> | Yes | Gravity vector. |
+| geomagnetic | Array<number> | Yes | Geomagnetic vector. |
+| callback | AsyncCallback<[RotationMatrixResponse](#rotationmatrixresponse)> | Yes | Callback used to return the rotation matrix. |
+
+**Example**
+
+ ```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));
+ })
+ ```
+
+
+## sensor.createRotationMatrix(deprecated)
+
+createRotationMatrix(gravity: Array<number>, geomagnetic: Array<number>,): Promise<RotationMatrixResponse>
+
+Creates a rotation matrix based on the gravity vector and geomagnetic vector. This API uses a promise to return the result.
+
+This API is deprecated since API version 9. You are advised to use [sensor.getRotationMatrix](#sensorgetrotationmatrix9-3) instead.
+
+**System capability**: SystemCapability.Sensors.Sensor
+
+**Parameters**
+
+| Name | Type | Mandatory | Description |
+| ----------- | ------------------- | --------- | ------------------- |
+| gravity | Array<number> | Yes | Gravity vector. |
+| geomagnetic | Array<number> | Yes | Geomagnetic vector. |
+
+**Return value**
+
+| Type | Description |
+| ------------------------------------------------------------ | ------------------------------------------- |
+| Promise<[RotationMatrixResponse](#rotationmatrixresponse)> | Promise used to return the rotation matrix. |
+
+**Example**
+
+ ```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');
+ })
+ ```
+
+
\ No newline at end of file