# 如何获取设备传感器列表

#### 问题现象

设备中内置了大量传感器，在使用传感器功能时，需要先获取传感器列表，然后判断设备是否具有所需的传感器，有哪些方式可以获取到设备的传感器列表？

#### 背景知识

*   传感器类型：系统传感器是应用访问底层硬件传感器的一种设备抽象概念。开发者根据传感器提供的Sensor接口，可以查询设备上的传感器，订阅传感器数据，并根据传感器数据定制相应的算法开发各类应用，比如指南针、运动健康、游戏等。
*   sensorId：当前支持订阅或取消订阅的传感器类型Id。
*   sensor.getSensorList：获取设备上的所有传感器信息。

#### 解决方案

*   **方案一：** 通过系统API接口sensor.getSensorListSync获取。
*   **方案二：** 通过hdc命令获取。
    1.  通过cmd进入命令窗口，或通过IDE进入Terminal命令窗口。
    2.  执行hdc shell。
    3.  执行hidumper -s 3601 -a -l命令。

#### 常见FAQ

Q：GT系列、Fit系列是否支持心率读取？

A：GT系列、Fit系列为Lite Wearable设备，两款手表支持心率读取，参考文档：Sensor.subscribeHeartRate，需要申请权限：ohos.permission.READ\_HEALTH\_DATA。