# 传感器开发指导

## 场景介绍

当设备需要获取传感器数据时，可以使用sensor模块，例如：通过订阅方向传感器数据感知用户设备当前的朝向。

详细的接口介绍请参考[Sensor接口](https://developer.huawei.com/consumer/cn/doc/harmonyos-references/js-apis-sensor)。

## 接口说明

|模块|接口名|描述|
|:----------|:----------------------------------------------------------|:-----------|
|ohos.sensor|sensor.on(sensorId, callback:AsyncCallback<Response>): void|持续监听传感器数据变化。|
|ohos.sensor|sensor.off(sensorId, callback?:AsyncCallback<void>): void|注销传感器数据的监听。|

## 开发步骤

开发步骤以加速度传感器ACCELEROMETER为例。

1. 导入模块。

   ```ts
   import sensor from '@ohos.sensor';
   ```

2. 检查是否已经配置相应权限。

3. 注册监听。通过on()接口，实现对传感器的持续监听，将传感器上报频率等级设为"game"。

   ```ts
   sensor.on(sensor.SensorId.ACCELEROMETER, (data: sensor.AccelerometerResponse) => {
       console.info("Succeeded in obtaining data. x: " + data.x + " y: " + data.y + " z: " + data.z);
   }, { interval: 'game' });
   ```

   ![](https://contentcenter-vali-drcn.dbankcdn.cn/pvt_2/DeveloperAlliance_scene_100_1/48/v3/K6KFV1P0Rp6geqoFxveinA/zh-cn_image_0000002788313781.png?HW-CC-KV=V1&HW-CC-Date=20261014T071431Z&HW-CC-Expire=31536000000&HW-CC-Sign=EFC98540A497BAA2629A8773A574B28CFFB6AAEE3E992157A047C10B8620FB16)
4. 取消持续监听。

   ```ts
   sensor.off(sensor.SensorId.ACCELEROMETER);
   ```

