1# 传感器开发指导
2
3
4## 场景介绍
5
6当设备需要获取传感器数据时,可以使用sensor模块,例如:通过订阅方向传感器数据感知用户设备当前的朝向。
7
8详细的接口介绍请参考[Sensor接口](../../reference/apis-sensor-service-kit/js-apis-sensor.md)。
9
10
11## 接口说明
12
13| 名称 | 描述 |
14| -------- | -------- |
15| sensor.on(sensorId, callback:AsyncCallback<Response>): void | 持续监听传感器数据变化。 |
16| sensor.off(sensorId, callback?:AsyncCallback<void>): void | 注销传感器数据的监听。 |
17
18
19## 开发步骤
20
21开发步骤以加速度传感器ACCELEROMETER为例。
22
231. 导入模块。
24
25    ```ts
26    import { sensor } from '@kit.SensorServiceKit';
27    ```
28
292. 检查是否已经配置相应权限,具体配置方式请参考[声明权限](../../security/AccessToken/declare-permissions.md)。
30
313. 注册监听。
32
33    通过on()接口,实现对传感器的持续监听,将传感器上报频率等级设为”game“。
34
35    ```ts
36    sensor.on(sensor.SensorId.ACCELEROMETER, (data: sensor.AccelerometerResponse) => {
37        console.info("Succeeded in obtaining data. x: " + data.x + " y: " + data.y + " z: " + data.z);
38    }, { interval: 'game' });
39    ```
40
41    ![输入图片说明](figures/002.png)
42
434. 取消持续监听。
44
45    ```ts
46    sensor.off(sensor.SensorId.ACCELEROMETER);
47    ```