【发布时间】:2025-12-30 19:50:16
【问题描述】:
所以我想在 Android 设备上创建一个包含所有可用传感器类型的列表,以便在计时器中获取所有可用传感器的当前值。
我目前有这个:
List<Sensor> availableSensors;
public void getAllSensors() {
PackageManager manager = getPackageManager();
SensorManager sensorMngr = (SensorManager) getSystemService(Context.SENSOR_SERVICE);
List<Sensor> sensors = sensorMngr.getSensorList(Sensor.TYPE_ALL);
for (Sensor sensor : sensors) {
if (manager.hasSystemFeature(/*Not sure what to do here*/ sensor)) {
availableSensors.add(sensor);
}
}
}
我对我不确定的部分添加了评论。 hasSystemFeature 似乎在期待一个字符串,但是当我尝试解析它 sensor.getName() 甚至 sensor 时,我没有得到任何结果。
当该类型存储在变量中时,如何检查设备是否具有传感器类型?我敢肯定答案很简单,但我就是想不出来。我需要在未来证明这个代码,所以我不能使用开关来解决它。
【问题讨论】:
标签: java android sensors android-sensors