js-apis-system-sensor.md 26.8 KB
Newer Older
1
# @system.sensor (传感器)
Z
zengyawen 已提交
2

C
cff-gite 已提交
3
sensor模块提供订阅传感器数据基本能力,主要包含查询传感器的列表、订阅/取消传感器的数据、执行控制命令等。
C
cff-gite 已提交
4

C
cff-gite 已提交
5
根据传感器的用途,可以将传感器分为六大类:运动类传感器、环境类传感器、方向类传感器、光线类传感器、健康类传感器、其他类传感器(如霍尔传感器),每一大类传感器包含不同类型的传感器,某种类型的传感器可能是单一的物理传感器,也可能是由多个物理传感器复合而成。
C
cff-gite 已提交
6

Z
zengyawen 已提交
7

zyjhandsome's avatar
zyjhandsome 已提交
8
> **说明:**
Z
zengyawen 已提交
9 10
>
> - 从API Version 8开始,该接口不再维护,推荐使用新接口[`@ohos.sensor`](js-apis-sensor.md)。
C
cff-gite 已提交
11
> - 本模块首批接口从API version 3开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。
Z
zengyawen 已提交
12 13 14 15 16 17 18 19 20 21 22 23
> - 该功能使用需要对应硬件支持,仅支持真机调试。


## 导入模块


```
import sensor from '@system.sensor';
```

## sensor.subscribeAccelerometer

C
cff-gite 已提交
24
 subscribeAccelerometer(options: subscribeAccelerometerOptions): void
Z
zengyawen 已提交
25 26 27

观察加速度数据变化。针对同一个应用,多次点击调用时,会覆盖前面的调用效果,即仅最后一次调用生效。

C
cff-gite 已提交
28
**系统能力**:SystemCapability.Sensors.Sensor
C
cff-gite 已提交
29 30 31

**需要权限**:ohos.permission.ACCELEROMETER,该权限为系统权限

Z
zengyawen 已提交
32 33
**参数:**

C
cff-gite 已提交
34 35
| 参数名  | 类型                                                         | 必填 | 说明                                       |
| ------- | ------------------------------------------------------------ | ---- | ------------------------------------------ |
C
cff-gite 已提交
36
| options | [subscribeAccelerometerOptions](#subscribeaccelerometeroptions) | 是   | 监听加速度传感器数据的回调函数的执行频率。 |
Z
zengyawen 已提交
37 38 39

**示例:**

C
cff-gite 已提交
40
```js
Z
zengyawen 已提交
41 42 43 44 45 46 47 48 49 50 51 52 53
sensor.subscribeAccelerometer({
  interval: 'normal',
  success: function(ret) {
    console.log('X-axis data: ' + ret.x);
    console.log('Y-axis data: ' + ret.y);
    console.log('Z-axis data: ' + ret.z);
  },
  fail: function(data, code) {
    console.error('Subscription failed. Code: ' + code + '; Data: ' + data);
  },
});
```

zyjhandsome's avatar
zyjhandsome 已提交
54
> **说明:**
Z
zengyawen 已提交
55 56 57 58 59 60 61 62
> 建议在页面销毁时,即onDestory回调中,取消数据订阅,避免不必要的性能开销。

## sensor.unsubscribeAccelerometer

unsubscribeAccelerometer(): void

取消订阅加速度数据。

C
cff-gite 已提交
63
**系统能力**:SystemCapability.Sensors.Sensor
C
cff-gite 已提交
64 65 66

**需要权限**:ohos.permission.ACCELEROMETER,该权限为系统权限

Z
zengyawen 已提交
67 68
**示例:**

C
cff-gite 已提交
69
```js
Z
zengyawen 已提交
70 71 72 73 74
sensor.unsubscribeAccelerometer();
```

## sensor.subscribeCompass

C
cff-gite 已提交
75
 subscribeCompass(options: SubscribeCompassOptions): void
Z
zengyawen 已提交
76 77 78

订阅罗盘数据变化。针对同一个应用,多次点击调用时,会覆盖前面的调用效果,即仅最后一次调用生效。

C
cff-gite 已提交
79
**系统能力**:SystemCapability.Sensors.Sensor
C
cff-gite 已提交
80

Z
zengyawen 已提交
81 82
**参数:**

C
cff-gite 已提交
83 84
| 参数名  | 类型                                                | 必填 | 说明                             |
| ------- | --------------------------------------------------- | ---- | -------------------------------- |
C
cff-gite 已提交
85
| options | [SubscribeCompassOptions](#subscribecompassoptions) | 是   | 当罗盘传感器数据发生变化时调用。 |
Z
zengyawen 已提交
86 87 88

**示例:**

C
cff-gite 已提交
89
```js
Z
zengyawen 已提交
90 91
sensor.subscribeCompass({
  success: function(ret) {
L
li-yaoyao777 已提交
92
    console.log('Get data direction:' + ret.direction);
Z
zengyawen 已提交
93 94 95 96 97 98 99
  },
  fail: function(data, code) {
    console.error('Subscription failed. Code: ' + code + '; Data: ' + data);
  },
});
```

zyjhandsome's avatar
zyjhandsome 已提交
100
> **说明:**
Z
zengyawen 已提交
101 102 103 104 105 106 107 108
> 建议在页面销毁时,即onDestory回调中,取消数据订阅,避免不必要的性能开销。

## sensor.unsubscribeCompass

unsubscribeCompass(): void

取消订阅罗盘。

C
cff-gite 已提交
109
**系统能力**:SystemCapability.Sensors.Sensor
C
cff-gite 已提交
110

Z
zengyawen 已提交
111 112
**示例:**

C
cff-gite 已提交
113
```js
Z
zengyawen 已提交
114 115 116 117 118
sensor.unsubscribeCompass();
```

## sensor.subscribeProximity

C
cff-gite 已提交
119
 subscribeProximity(options: SubscribeProximityOptions): void
Z
zengyawen 已提交
120 121 122

订阅距离感应数据变化。针对同一个应用,多次点击调用时,会覆盖前面的调用效果,即仅最后一次调用生效。

C
cff-gite 已提交
123
**系统能力**:SystemCapability.Sensors.Sensor
C
cff-gite 已提交
124

Z
zengyawen 已提交
125 126
**参数:**

C
cff-gite 已提交
127 128
| 参数名  | 类型                                                    | 必填 | 说明                             |
| ------- | ------------------------------------------------------- | ---- | -------------------------------- |
C
cff-gite 已提交
129
| options | [SubscribeProximityOptions](#subscribeproximityoptions) | 是   | 当距离传感器数据发生变化时调用。 |
Z
zengyawen 已提交
130 131 132

**示例:**

C
cff-gite 已提交
133
```js
Z
zengyawen 已提交
134 135
sensor.subscribeProximity({
  success: function(ret) {
L
li-yaoyao777 已提交
136
    console.log('Get data distance:' + ret.distance);
Z
zengyawen 已提交
137 138 139 140 141 142 143
  },
  fail: function(data, code) {
    console.error('Subscription failed. Code: ' + code + '; Data: ' + data);
  },
});
```

zyjhandsome's avatar
zyjhandsome 已提交
144
> **说明:**
Z
zengyawen 已提交
145 146 147 148 149 150 151 152
> 建议在页面销毁时,即onDestory回调中,取消数据订阅,避免不必要的性能开销。

## sensor.unsubscribeProximity

unsubscribeProximity(): void

取消订阅距离感应。

C
cff-gite 已提交
153
**系统能力**:SystemCapability.Sensors.Sensor
C
cff-gite 已提交
154

Z
zengyawen 已提交
155 156
**示例:**

C
cff-gite 已提交
157
```js
Z
zengyawen 已提交
158 159 160 161 162
sensor.unsubscribeProximity();
```

## sensor.subscribeLight

C
cff-gite 已提交
163
 subscribeLight(options: SubscribeLightOptions): void
Z
zengyawen 已提交
164 165 166

订阅环境光线感应数据变化。再次调用时,会覆盖前一次调用效果,即仅最后一次调用生效。

C
cff-gite 已提交
167
**系统能力**:SystemCapability.Sensors.Sensor
C
cff-gite 已提交
168

Z
zengyawen 已提交
169 170
**参数:**

C
cff-gite 已提交
171 172
| 参数名  | 类型                                            | 必填 | 说明                               |
| ------- | ----------------------------------------------- | ---- | ---------------------------------- |
C
cff-gite 已提交
173
| options | [SubscribeLightOptions](#subscribelightoptions) | 是   | 当环境光传感器数据发生变化时调用。 |
Z
zengyawen 已提交
174 175 176

**示例:**

C
cff-gite 已提交
177
```js
Z
zengyawen 已提交
178 179
sensor.subscribeLight({
  success: function(ret) {
L
li-yaoyao777 已提交
180
    console.log('Get data intensity:' + ret.intensity);
Z
zengyawen 已提交
181 182 183 184 185 186 187
  },
  fail: function(data, code) {
    console.error('Subscription failed. Code: ' + code + '; Data: ' + data);
  },
});
```

zyjhandsome's avatar
zyjhandsome 已提交
188
> **说明:**
Z
zengyawen 已提交
189 190 191 192 193 194 195 196
> 建议在页面销毁时,即onDestory回调中,取消数据订阅,避免不必要的性能开销。

## sensor.unsubscribeLight

unsubscribeLight(): void

取消订阅环境光线感应。

C
cff-gite 已提交
197
**系统能力**:SystemCapability.Sensors.Sensor
C
cff-gite 已提交
198

Z
zengyawen 已提交
199 200
**示例:**

C
cff-gite 已提交
201
```js
Z
zengyawen 已提交
202 203 204 205 206
sensor.unsubscribeLight();
```

## sensor.subscribeStepCounter

C
cff-gite 已提交
207
 subscribeStepCounter(options: SubscribeStepCounterOptions): void
Z
zengyawen 已提交
208 209 210

订阅计步传感器数据变化。针对同一个应用,多次点击调用时,会覆盖前面的调用效果,即仅最后一次调用生效。

C
cff-gite 已提交
211
**系统能力**:SystemCapability.Sensors.Sensor
C
cff-gite 已提交
212 213 214

**需要权限**:ohos.permission.ACTIVITY_MOTION

Z
zengyawen 已提交
215 216
**参数:**

C
cff-gite 已提交
217 218
| 参数名  | 类型                                                        | 必填 | 说明                                   |
| ------- | ----------------------------------------------------------- | ---- | -------------------------------------- |
C
cff-gite 已提交
219
| options | [SubscribeStepCounterOptions](#subscribestepcounteroptions) | 是   | 当步进计数器传感器数据发生变化时调用。 |
Z
zengyawen 已提交
220 221 222

**示例:**

C
cff-gite 已提交
223
```js
Z
zengyawen 已提交
224 225
sensor.subscribeStepCounter({
  success: function(ret) {
L
li-yaoyao777 已提交
226
    console.log('Get step value:' + ret.steps);
Z
zengyawen 已提交
227 228 229 230 231 232 233
  },
  fail: function(data, code) {
    console.log('Subscription failed. Code: ' + code + '; Data: ' + data);
  },
});
```

zyjhandsome's avatar
zyjhandsome 已提交
234
> **说明:**
Z
zengyawen 已提交
235 236 237 238 239 240 241 242
> 建议在页面销毁时,即onDestory回调中,取消数据订阅,避免不必要的性能开销。

## sensor.unsubscribeStepCounter

unsubscribeStepCounter(): void

取消订阅计步传感器。

C
cff-gite 已提交
243
**系统能力**:SystemCapability.Sensors.Sensor
C
cff-gite 已提交
244 245 246

**需要权限**:ohos.permission.ACTIVITY_MOTION

Z
zengyawen 已提交
247 248
**示例:**

C
cff-gite 已提交
249
```js
Z
zengyawen 已提交
250 251 252 253 254 255
sensor.unsubscribeStepCounter();
```


## sensor.subscribeBarometer

C
cff-gite 已提交
256
subscribeBarometer(options: SubscribeBarometerOptions): void
Z
zengyawen 已提交
257

L
li-yaoyao777 已提交
258
订阅气压计传感器数据变化。针对同一个应用,多次点击调用时,会覆盖前面的调用效果,即仅最后一次调用生效。
Z
zengyawen 已提交
259

C
cff-gite 已提交
260
**系统能力**:SystemCapability.Sensors.Sensor
C
cff-gite 已提交
261

Z
zengyawen 已提交
262 263
**参数:**

C
cff-gite 已提交
264 265
| 参数名  | 类型                                                    | 必填 | 说明                               |
| ------- | ------------------------------------------------------- | ---- | ---------------------------------- |
C
cff-gite 已提交
266
| options | [SubscribeBarometerOptions](#subscribebarometeroptions) | 是   | 当气压计传感器数据发生变化时调用。 |
Z
zengyawen 已提交
267 268 269

**示例:**

C
cff-gite 已提交
270
```js
Z
zengyawen 已提交
271 272
sensor.subscribeBarometer({
  success: function(ret) {
L
li-yaoyao777 已提交
273
    console.log('Get data value:' + ret.pressure);
Z
zengyawen 已提交
274 275 276 277 278 279 280
  },
  fail: function(data, code) {
    console.log('Subscription failed. Code: ' + code + '; Data: ' + data);
  },
});
```

zyjhandsome's avatar
zyjhandsome 已提交
281
> **说明:**
Z
zengyawen 已提交
282 283 284 285 286 287 288
> 建议在页面销毁时,即onDestory回调中,取消数据订阅,避免不必要的性能开销。


## sensor.unsubscribeBarometer

unsubscribeBarometer(): void

L
li-yaoyao777 已提交
289
取消订阅气压计传感器。
Z
zengyawen 已提交
290

C
cff-gite 已提交
291
**系统能力**:SystemCapability.Sensors.Sensor
C
cff-gite 已提交
292

Z
zengyawen 已提交
293 294
**示例:**

C
cff-gite 已提交
295
```js
Z
zengyawen 已提交
296 297 298 299 300 301
sensor.unsubscribeBarometer();
```


## sensor.subscribeHeartRate

C
cff-gite 已提交
302
 subscribeHeartRate(options: SubscribeHeartRateOptions): void
Z
zengyawen 已提交
303 304 305

订阅心率传感器数据变化。针对同一个应用,多次点击调用时,会覆盖前面的调用效果,即仅最后一次调用生效。

C
cff-gite 已提交
306
**系统能力**:SystemCapability.Sensors.Sensor
C
cff-gite 已提交
307 308 309

**需要权限**:ohos.permission.READ_HEALTH_DATA

Z
zengyawen 已提交
310 311
**参数:**

C
cff-gite 已提交
312 313
| 参数名  | 类型                                                    | 必填 | 说明                             |
| ------- | ------------------------------------------------------- | ---- | -------------------------------- |
C
cff-gite 已提交
314
| options | [SubscribeHeartRateOptions](#subscribeheartrateoptions) | 是   | 当心率传感器数据发生变化时调用。 |
Z
zengyawen 已提交
315 316 317

**示例:**

C
cff-gite 已提交
318
```js
Z
zengyawen 已提交
319 320
sensor.subscribeHeartRate({
  success: function(ret) {
L
li-yaoyao777 已提交
321
    console.log('Get heartrate value:' + ret.heartRate);
Z
zengyawen 已提交
322 323 324 325 326 327 328
  },
  fail: function(data, code) {
    console.log('Subscription failed. Code: ' + code + '; Data: ' + data);
  },
});
```

zyjhandsome's avatar
zyjhandsome 已提交
329
> **说明:**
Z
zengyawen 已提交
330 331 332 333 334 335 336
> 建议在页面销毁时,即onDestory回调中,取消数据订阅,避免不必要的性能开销。


## sensor.unsubscribeHeartRate

unsubscribeHeartRate(): void

L
li-yaoyao777 已提交
337
取消订阅心率传感器。
Z
zengyawen 已提交
338

C
cff-gite 已提交
339
**系统能力**:SystemCapability.Sensors.Sensor
C
cff-gite 已提交
340 341 342

**需要权限**:ohos.permission.READ_HEALTH_DATA

Z
zengyawen 已提交
343 344
**示例:**

C
cff-gite 已提交
345
```js
Z
zengyawen 已提交
346 347 348 349 350
sensor.unsubscribeHeartRate();
```

## sensor.subscribeOnBodyState

C
cff-gite 已提交
351
 subscribeOnBodyState(options: SubscribeOnBodyStateOptions): void
Z
zengyawen 已提交
352 353 354

订阅设备佩戴状态。针对同一个应用,多次点击调用时,会覆盖前面的调用效果,即仅最后一次调用生效。

C
cff-gite 已提交
355
**系统能力**:SystemCapability.Sensors.Sensor
C
cff-gite 已提交
356

Z
zengyawen 已提交
357 358
**参数:**

C
cff-gite 已提交
359 360
| 参数名  | 类型                                                        | 必填 | 说明                   |
| ------- | ----------------------------------------------------------- | ---- | ---------------------- |
C
cff-gite 已提交
361
| options | [SubscribeOnBodyStateOptions](#subscribeonbodystateoptions) | 是   | 当穿着状态改变时调用。 |
Z
zengyawen 已提交
362 363 364

**示例:**

C
cff-gite 已提交
365
```js
Z
zengyawen 已提交
366 367
sensor.subscribeOnBodyState({
  success: function(ret) {
L
li-yaoyao777 已提交
368
    console.log('Get on-body state value:' + ret.value);
Z
zengyawen 已提交
369 370 371 372 373 374 375
  },
  fail: function(data, code) {
    console.log('Subscription failed. Code: ' + code + '; Data: ' + data);
  },
});
```

zyjhandsome's avatar
zyjhandsome 已提交
376
> **说明:**
Z
zengyawen 已提交
377 378 379 380 381 382 383 384
> 建议在页面销毁时,即onDestory回调中,取消数据订阅,避免不必要的性能开销。

## sensor.unsubscribeOnBodyState

unsubscribeOnBodyState(): void

取消订阅设备佩戴状态。

C
cff-gite 已提交
385
**系统能力**:SystemCapability.Sensors.Sensor
C
cff-gite 已提交
386

Z
zengyawen 已提交
387 388
**示例:**

C
cff-gite 已提交
389
```js
Z
zengyawen 已提交
390 391 392 393 394
sensor.unsubscribeOnBodyState();
```

## sensor.getOnBodyState

C
cff-gite 已提交
395
 getOnBodyState(options: GetOnBodyStateOptions): void
Z
zengyawen 已提交
396 397 398

获取设备佩戴状态。

C
cff-gite 已提交
399
**系统能力**:SystemCapability.Sensors.Sensor
C
cff-gite 已提交
400

Z
zengyawen 已提交
401 402
**参数:**

C
cff-gite 已提交
403 404
| 参数名  | 类型                                            | 必填 | 说明                       |
| ------- | ----------------------------------------------- | ---- | -------------------------- |
C
cff-gite 已提交
405
| options | [GetOnBodyStateOptions](#getonbodystateoptions) | 是   | 获取传感器磨损状态时调用。 |
Z
zengyawen 已提交
406 407 408

**示例:**

C
cff-gite 已提交
409
```js
Z
zengyawen 已提交
410 411
sensor.getOnBodyState({
  success: function(ret) {
L
li-yaoyao777 已提交
412
    console.log('On body state: ' + ret.value);
Z
zengyawen 已提交
413 414 415 416 417 418 419 420 421
  },
  fail: function(data, code) {
    console.log('Subscription failed. Code: ' + code + '; Data: ' + data);
  },
});
```

## sensor.subscribeDeviceOrientation<sup>6+</sup>

C
cff-gite 已提交
422
 subscribeDeviceOrientation(options: SubscribeDeviceOrientationOptions): void
Z
zengyawen 已提交
423 424 425 426 427

观察设备方向传感器数据变化。

针对同一个应用,多次点击调用时,会覆盖前面的调用效果,即仅最后一次调用生效;针对同一个方法内,不支持多次调用。

C
cff-gite 已提交
428
**系统能力**:SystemCapability.Sensors.Sensor
C
cff-gite 已提交
429

Z
zengyawen 已提交
430 431
**参数:**

C
cff-gite 已提交
432 433
| 参数名  | 类型                                                         | 必填 | 说明                                             |
| ------- | ------------------------------------------------------------ | ---- | ------------------------------------------------ |
C
cff-gite 已提交
434
| options | [SubscribeDeviceOrientationOptions](#subscribedeviceorientationoptions) | 是   | 用于监听设备方向传感器数据的回调函数的执行频率。 |
Z
zengyawen 已提交
435 436 437

**示例:**

C
cff-gite 已提交
438
```js
Z
zengyawen 已提交
439 440 441 442 443 444 445 446 447 448 449 450 451
sensor.subscribeDeviceOrientation({
  interval: 'normal',
  success: function(ret) {
    console.log('Alpha data: ' + ret.alpha);
    console.log('Beta data: ' + ret.beta);
    console.log('Gamma data: ' + ret.gamma);
  },
  fail: function(data, code) {
    console.error('Subscription failed. Code: ' + code + '; Data: ' + data);
  }
});
```

zyjhandsome's avatar
zyjhandsome 已提交
452
> **说明:**
Z
zengyawen 已提交
453 454 455 456 457 458 459 460
> 建议在页面销毁时,即onDestory回调中,取消数据订阅,避免不必要的性能开销。

## sensor.unsubscribeDeviceOrientation<sup>6+</sup>

unsubscribeDeviceOrientation(): void

取消订阅设备方向传感器数据。

C
cff-gite 已提交
461
**系统能力**:SystemCapability.Sensors.Sensor
C
cff-gite 已提交
462

Z
zengyawen 已提交
463 464
**示例:**

C
cff-gite 已提交
465
```js
Z
zengyawen 已提交
466 467 468 469 470
sensor.unsubscribeDeviceOrientation();
```

## sensor.subscribeGyroscope<sup>6+</sup>

C
cff-gite 已提交
471
 subscribeGyroscope(options: SubscribeGyroscopeOptions): void
Z
zengyawen 已提交
472

L
li-yaoyao777 已提交
473
观察陀螺仪传感器数据变化。
Z
zengyawen 已提交
474 475 476

针对同一个应用,多次点击调用时,会覆盖前面的调用效果,即仅最后一次调用生效;针对同一个方法内,不支持多次调用。

C
cff-gite 已提交
477
**系统能力**:SystemCapability.Sensors.Sensor
C
cff-gite 已提交
478 479 480

**需要权限**:ohos.permission.GYROSCOPE,该权限为系统权限

Z
zengyawen 已提交
481 482
**参数:**

C
cff-gite 已提交
483 484
| 参数名  | 类型                                                    | 必填 | 说明                                           |
| ------- | ------------------------------------------------------- | ---- | ---------------------------------------------- |
C
cff-gite 已提交
485
| options | [SubscribeGyroscopeOptions](#subscribegyroscopeoptions) | 是   | 用于侦听陀螺仪传感器数据的回调函数的执行频率。 |
Z
zengyawen 已提交
486 487 488

**示例:**

C
cff-gite 已提交
489
```js
Z
zengyawen 已提交
490 491 492 493 494 495 496 497 498 499 500 501 502
sensor.subscribeGyroscope({
  interval: 'normal',
  success: function(ret) {
    console.log('X-axis data: ' + ret.x);
    console.log('Y-axis data: ' + ret.y);
    console.log('Z-axis data: ' + ret.z);
  },
  fail: function(data, code) {
    console.error('Subscription failed. Code: ' + code + '; data: ' + data);
  }
});
```

zyjhandsome's avatar
zyjhandsome 已提交
503
> **说明:**
Z
zengyawen 已提交
504 505 506 507 508 509
> 建议在页面销毁时,即onDestory回调中,取消数据订阅,避免不必要的性能开销。

## sensor.unsubscribeGyroscope<sup>6+</sup>

unsubscribeGyroscope(): void

L
li-yaoyao777 已提交
510
取消订阅陀螺仪传感器数据。
Z
zengyawen 已提交
511

C
cff-gite 已提交
512
**系统能力**:SystemCapability.Sensors.Sensor
C
cff-gite 已提交
513 514 515

**需要权限**:ohos.permission.GYROSCOPE,该权限为系统权限

Z
zengyawen 已提交
516 517
**示例:**

C
cff-gite 已提交
518
```js
Z
zengyawen 已提交
519 520
sensor.unsubscribeGyroscope();
```
C
cff-gite 已提交
521 522 523

## subscribeAccelerometerOptions

C
cff-gite 已提交
524
用于监听加速度传感器数据的回调函数的执行频率。
C
cff-gite 已提交
525 526 527 528 529 530 531 532

**需要权限**:ohos.permission.ACCELEROMETER

**系统能力**:SystemCapability.Sensors.Sensor

| 名称     | 类型                                            | 必填 | 说明                                                         |
| -------- | ----------------------------------------------- | ---- | ------------------------------------------------------------ |
| interval | string                                          | 是   | 频率参数,加速度的回调函数执行频率。 默认为normal,可选值有: - game:极高的回调频率,20ms/次,适用于游戏。 - ui:较高的回调频率,60ms/次,适用于UI更新。 - normal:普通的回调频率,200ms/次,低功耗。 |
C
cff-gite 已提交
533
| success  | [AccelerometerResponse](#accelerometerresponse) | 是   | 感应到加速度数据变化后的回调函数。                           |
C
cff-gite 已提交
534 535 536 537 538 539 540 541 542 543
| fail     | Function                                        | 否   | 接口调用失败的回调函数。                                     |

## AccelerometerResponse 

感应到加速度数据变化后的回调函数。  

**需要权限**:ohos.permission.ACCELEROMETER

**系统能力**:SystemCapability.Sensors.Sensor

C
cff-gite 已提交
544 545 546 547 548
| 名称 | 类型   | 必填 | 说明          |
| ---- | ------ | ---- | ------------- |
| x    | number | 是   | x轴的加速度。 |
| y    | number | 是   | y轴的加速度。 |
| z    | number | 是   | z轴的加速度。 |
C
cff-gite 已提交
549 550 551 552 553 554 555 556 557

## SubscribeCompassOptions

当罗盘传感器数据发生变化时调用。

**系统能力**:SystemCapability.Sensors.Sensor

| 名称    | 类型                                | 必填 | 说明                           |
| ------- | ----------------------------------- | ---- | ------------------------------ |
C
cff-gite 已提交
558
| success | [CompassResponse](#compassresponse) | 是   | 罗盘数据改变后触发的回调函数。 |
C
cff-gite 已提交
559 560 561 562 563 564 565 566
| fail    | Function                            | 否   | 接口调用失败的回调函数。       |

## CompassResponse 

罗盘数据改变后触发的回调函数。

**系统能力**:SystemCapability.Sensors.Sensor

C
cff-gite 已提交
567 568 569
| 名称      | 类型   | 必填 | 说明                 |
| --------- | ------ | ---- | -------------------- |
| direction | number | 是   | 设备面对的方向度数。 |
C
cff-gite 已提交
570 571 572 573 574 575 576 577 578

## SubscribeProximityOptions

当距离传感器数据发生变化时调用。

**系统能力**:SystemCapability.Sensors.Sensor

| 名称    | 类型                                    | 必填 | 说明                               |
| ------- | --------------------------------------- | ---- | ---------------------------------- |
C
cff-gite 已提交
579
| success | [ProximityResponse](#proximityresponse) | 是   | 距离感应数据改变后调用的回调函数。 |
C
cff-gite 已提交
580 581 582 583 584 585 586 587
| fail    | Function                                | 否   | 接口调用失败的回调函数。           |

## ProximityResponse 

距离感应数据改变后调用的回调函数。

**系统能力**:SystemCapability.Sensors.Sensor

C
cff-gite 已提交
588 589 590
| 名称     | 类型   | 必填 | 说明                                       |
| -------- | ------ | ---- | ------------------------------------------ |
| distance | number | 是   | 可见物体相对于设备显示屏的接近或远离状态。 |
C
cff-gite 已提交
591 592 593 594 595 596 597 598 599

## SubscribeLightOptions

当环境光传感器数据发生变化时调用。

**系统能力**:SystemCapability.Sensors.Sensor

| 名称    | 类型                            | 必填 | 说明                           |
| ------- | ------------------------------- | ---- | ------------------------------ |
C
cff-gite 已提交
600
| success | [LightResponse](#lightresponse) | 是   | 光线感应数据改变后的回调函数。 |
C
cff-gite 已提交
601 602 603 604 605 606 607 608
| fail    | Function                        | 否   | 接口调用失败的回调函数。       |

## LightResponse 

光线感应数据改变后的回调函数。

**系统能力**:SystemCapability.Sensors.Sensor

C
cff-gite 已提交
609 610 611
| 名称      | 类型   | 必填 | 说明                  |
| --------- | ------ | ---- | --------------------- |
| intensity | number | 是   | 光线强度,单位为lux。 |
C
cff-gite 已提交
612 613 614 615 616

## SubscribeStepCounterOptions

当步进计数器传感器数据发生变化时调用。

C
cff-gite 已提交
617 618
**需要权限**:ohos.permission.ACTIVITY_MOTION

C
cff-gite 已提交
619 620 621 622
**系统能力**:SystemCapability.Sensors.Sensor

| 名称    | 类型                                        | 必填 | 说明                             |
| ------- | ------------------------------------------- | ---- | -------------------------------- |
C
cff-gite 已提交
623
| success | [StepCounterResponse](#stepcounterresponse) | 是   | 计步传感器数据改变后的回调函数。 |
C
cff-gite 已提交
624 625 626 627 628 629 630 631 632 633
| fail    | Function                                    | 否   | 接口调用失败的回调函数。         |

## StepCounterResponse 

计步传感器数据改变后的回调函数。

**需要权限**:ohos.permission.ACTIVITY_MOTION

**系统能力**:SystemCapability.Sensors.Sensor

C
cff-gite 已提交
634 635 636
| 名称  | 类型   | 必填 | 说明                             |
| ----- | ------ | ---- | -------------------------------- |
| steps | number | 是   | 计步传感器重启后累计记录的步数。 |
C
cff-gite 已提交
637 638 639 640 641 642 643 644 645

## SubscribeBarometerOptions

当气压计传感器数据发生变化时调用。

**系统能力**:SystemCapability.Sensors.Sensor

| 名称    | 类型                                    | 必填 | 说明                             |
| ------- | --------------------------------------- | ---- | -------------------------------- |
L
li-yaoyao777 已提交
646
| success | [BarometerResponse](#barometerresponse) | 是   | 气压计传感器数据改变后的回调函数。 |
C
cff-gite 已提交
647 648 649 650
| fail    | Function                                | 否   | 接口调用失败的回调函数。         |

## BarometerResponse 

L
li-yaoyao777 已提交
651
气压计传感器数据改变后的回调函数。
C
cff-gite 已提交
652 653 654

**系统能力**:SystemCapability.Sensors.Sensor

C
cff-gite 已提交
655 656 657
| 名称     | 类型   | 必填 | 说明                   |
| -------- | ------ | ---- | ---------------------- |
| pressure | number | 是   | 气压值,单位:帕斯卡。 |
C
cff-gite 已提交
658 659 660

## SubscribeHeartRateOptions

C
cff-gite 已提交
661
当心率传感器数据发生变化时调用。
C
cff-gite 已提交
662

C
cff-gite 已提交
663 664
**需要权限**:ohos.permission.READ_HEALTH_DATA 

C
cff-gite 已提交
665 666 667 668
**系统能力**:SystemCapability.Sensors.Sensor

| 名称    | 类型                                    | 必填 | 说明                                            |
| ------- | --------------------------------------- | ---- | ----------------------------------------------- |
C
cff-gite 已提交
669
| success | [HeartRateResponse](#heartrateresponse) | 是   | 心率传感器数据改变后的回调函数,默认频率5s/次。 |
C
cff-gite 已提交
670 671 672 673 674 675
| fail    | Function                                | 否   | 接口调用失败的回调函数。                        |

## HeartRateResponse 

心率传感器数据改变后的回调函数,默认频率5s/次。

C
cff-gite 已提交
676
**需要权限**:ohos.permission.READ_HEALTH_DATA 
C
cff-gite 已提交
677 678 679

**系统能力**:SystemCapability.Sensors.Sensor

C
cff-gite 已提交
680 681 682
| 名称      | 类型   | 必填 | 说明     |
| --------- | ------ | ---- | -------- |
| heartRate | number | 是   | 心率值。 |
C
cff-gite 已提交
683 684 685 686 687 688 689 690 691

## SubscribeOnBodyStateOptions

当穿着状态改变时调用。

**系统能力**:SystemCapability.Sensors.Sensor

| 名称    | 类型                                        | 必填 | 说明                       |
| ------- | ------------------------------------------- | ---- | -------------------------- |
C
cff-gite 已提交
692
| success | [OnBodyStateResponse](#onbodystateresponse) | 是   | 穿戴状态改变后的回调函数。 |
C
cff-gite 已提交
693 694 695 696
| fail    | Function                                    | 否   | 接口调用失败的回调函数。   |

## OnBodyStateResponse 

C
cff-gite 已提交
697
传感器是否磨损。
C
cff-gite 已提交
698 699 700

**系统能力**:SystemCapability.Sensors.Sensor

C
cff-gite 已提交
701 702 703
| 名称  | 类型    | 必填 | 说明         |
| ----- | ------- | ---- | ------------ |
| value | boolean | 是   | 是否已佩戴。 |
C
cff-gite 已提交
704 705 706

## GetOnBodyStateOptions

C
cff-gite 已提交
707
 获取传感器磨损状态时调用。
C
cff-gite 已提交
708 709 710 711 712

**系统能力**:SystemCapability.Sensors.Sensor

| 名称     | 类型                                        | 必填 | 说明                     |
| -------- | ------------------------------------------- | ---- | ------------------------ |
L
li-yaoyao777 已提交
713
| success  | [OnBodyStateResponse](#onbodystateresponse) | 是   | 接口调用成功的回调函数。 |
C
cff-gite 已提交
714 715 716 717 718
| fail     | Function                                    | 否   | 接口调用失败的回调函数。 |
| complete | Function                                    | 否   | 接口调用结束的回调函数。 |

## SubscribeDeviceOrientationOptions<sup>6+</sup>

C
cff-gite 已提交
719
用于监听设备方向传感器数据的回调函数的执行频率。
C
cff-gite 已提交
720

C
cff-gite 已提交
721
**系统能力**:SystemCapability.Sensors.Sensor
C
cff-gite 已提交
722 723 724 725

| 名称     | 类型                                                    | 必填 | 说明                                                         |
| -------- | ------------------------------------------------------- | ---- | ------------------------------------------------------------ |
| interval | string                                                  | 是   | 频率参数,设备方向传感器的回调函数执行频率。<br/>默认为normal,可选值有:<br/>-&nbsp;game:极高的回调频率,20ms/次,适用于游戏。<br/>-&nbsp;ui:较高的回调频率,60ms/次,适用于UI更新。<br/>-&nbsp;normal:普通的回调频率,200ms/次,低功耗。 |
C
cff-gite 已提交
726
| success  | [DeviceOrientationResponse](#deviceorientationresponse) | 是   | 感应到设备方向传感器数据变化后的回调函数。                   |
C
cff-gite 已提交
727 728 729 730 731 732 733 734
| fail     | Function                                                | 否   | 接口调用失败的回调函数。                                     |

## DeviceOrientationResponse<sup>6+</sup> 

感应到设备方向传感器数据变化后的回调函数。

**系统能力**:SystemCapability.Sensors.Sensor

C
cff-gite 已提交
735 736 737 738 739
| 名称  | 类型   | 必填 | 说明                                                         |
| ----- | ------ | ---- | ------------------------------------------------------------ |
| alpha | number | 是   | 当设备坐标&nbsp;X/Y&nbsp;和地球&nbsp;X/Y&nbsp;重合时,绕着&nbsp;Z&nbsp;轴转动的夹角为&nbsp;alpha。 |
| beta  | number | 是   | 当设备坐标&nbsp;Y/Z&nbsp;和地球&nbsp;Y/Z&nbsp;重合时,绕着&nbsp;X&nbsp;轴转动的夹角为&nbsp;beta。 |
| gamma | number | 是   | 当设备&nbsp;X/Z&nbsp;和地球&nbsp;X/Z&nbsp;重合时,绕着&nbsp;Y&nbsp;轴转动的夹角为&nbsp;gamma。 |
C
cff-gite 已提交
740 741 742

## SubscribeGyroscopeOptions<sup>6+</sup> 

C
cff-gite 已提交
743
用于侦听陀螺仪传感器数据的回调函数的执行频率。
C
cff-gite 已提交
744

C
cff-gite 已提交
745 746
**需要权限**:ohos.permission.GYROSCOPE

C
cff-gite 已提交
747 748 749 750 751
**系统能力**:SystemCapability.Sensors.Sensor

| 名称     | 类型                                    | 必填 | 说明                                                         |
| -------- | --------------------------------------- | ---- | ------------------------------------------------------------ |
| interval | string                                  | 是   | 频率参数,陀螺仪的回调函数执行频率。<br/>默认为normal,可选值有:<br/>-&nbsp;game:极高的回调频率,20ms/次,适用于游戏。<br/>-&nbsp;ui:较高的回调频率,60ms/次,适用于UI更新。<br/>-&nbsp;normal:普通的回调频率,200ms/次,低功耗。 |
C
cff-gite 已提交
752
| success  | [GyroscopeResponse](#gyroscoperesponse) | 是   | 感应到陀螺仪数据变化后的回调函数。                           |
C
cff-gite 已提交
753 754 755 756
| fail     | Function                                | 否   | 接口调用失败的回调函数。                                     |

## GyroscopeResponse<sup>6+</sup> 

L
li-yaoyao777 已提交
757
感应到陀螺仪传感器数据变化后的回调函数。
C
cff-gite 已提交
758

C
cff-gite 已提交
759
**需要权限**:ohos.permission.GYROSCOPE
C
cff-gite 已提交
760 761 762

**系统能力**:SystemCapability.Sensors.Sensor

C
cff-gite 已提交
763 764 765 766 767
| 名称 | 类型   | 必填 | 说明              |
| ---- | ------ | ---- | ----------------- |
| x    | number | 是   | x轴的旋转角速度。 |
| y    | number | 是   | y轴的旋转角速度。 |
| z    | number | 是   | z轴的旋转角速度。 |