HarmonyOS鸿蒙Next中温度传感器为什么一直获取不到呢?是因为手机没有温度传感器吗?

HarmonyOS鸿蒙Next中温度传感器为什么一直获取不到呢?是因为手机没有温度传感器吗?

private CategoryEnvironmentAgent categoryEnvironmentAgent = new CategoryEnvironmentAgent();
private ICategoryEnvironmentDataCallback environmentDataCallback;
private CategoryEnvironment environmentSensor;

environmentDataCallback = new ICategoryEnvironmentDataCallback() {
    @Override
    public void onSensorDataModified(CategoryEnvironmentData categoryEnvironmentData) {
        float a = categoryEnvironmentData.getValues()[0];
        textField.setHint(String.valueOf(categoryEnvironmentData.getValues()[0]));
        HiLog.info(label, String.valueOf(a));
    }

    @Override
    public void onAccuracyDataModified(CategoryEnvironment categoryEnvironment, int i) {
    }

    @Override
    public void onCommandCompleted(CategoryEnvironment categoryEnvironment) {
    }
};

environmentSensor = categoryEnvironmentAgent.getSingleSensor(SENSOR_TYPE_AMBIENT_TEMPERATURE);

if (environmentSensor != null) {
    HiLog.info(label, "温度传感器获取成功");
    categoryEnvironmentAgent.setSensorDataCallback(environmentDataCallback, environmentSensor, 100000000L);
} else {
    HiLog.info(label, "温度传感器获取失败");
}

如上面代码所示,不管是在模拟器、远程真机上调试,还是在真机上调试,都显示温度传感器获取失败,请问是因为手机没有传感器的原因吗?谢谢!

更多关于HarmonyOS鸿蒙Next中温度传感器为什么一直获取不到呢?是因为手机没有温度传感器吗?的实战教程也可以访问 https://www.itying.com/category-93-b0.html

4 回复

可能需要硬件支持。

荣耀Play4Pro是行业首款“红外测温5G手机”。

不知道你的手机是不是荣耀Play4Pro。

更多关于HarmonyOS鸿蒙Next中温度传感器为什么一直获取不到呢?是因为手机没有温度传感器吗?的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


确实如此,我获取了一下远程真机的传感器列表,发现并没有温度传感器,非常感谢!

HarmonyOS鸿蒙Next中无法获取温度传感器数据,可能是因为设备本身并未配备温度传感器。温度传感器并非所有手机的标配,部分设备可能未集成该硬件。此外,即使设备具备温度传感器,也可能由于系统权限、驱动问题或API调用错误导致数据无法获取。建议检查设备硬件规格,确认是否支持温度传感器,并确保相关权限和API调用正确。

在HarmonyOS鸿蒙Next中,如果无法获取温度传感器数据,可能是因为大多数手机并未内置温度传感器。手机通常配备的是环境光传感器、加速度传感器等,而非温度传感器。若需获取温度数据,建议使用外接设备或通过API获取网络提供的温度信息。

回到顶部