我正在尝试访问安卓设备的CPU温度,特别是三星Galaxy S8 (与GearVR一起使用),以便能够在应用程序界面中显示它。温度和AMBIENT_TEMPERATURE传感器似乎不可用,除非我在代码中做错了什么?
我尝试从传感器管理器获取默认的AMBIENT_TEMPERATURE和温度传感器,但都返回null。
sensorManager = (SensorManager) context.getSystemService(Context.SENSOR_SERVICE);
ambTemperatureSensor = sensorManager.getDefaultSensor(Sensor.TYPE_AMBIENT_TEMPERATURE);
if(ambTemperatureSensor == null)
message += "No ambient temperature sensor...\n";
temperatureSensor = sensorManager.getDefaultSensor(Sensor.TYPE_TEMPERATURE);
if(temperatureSensor == null)
message += "No temperature sensor...\n";我完全期待着AMBIENT_TEMPERATURE传感器的出现,并让我访问CPU的温度,但当这不起作用时,我想也许可以使用弃用的温度传感器。在调用getDefaultSensor之前,我需要做什么吗?
发布于 2019-05-22 01:30:27
传感器AMBIENT_TEMPERATURE只在Galaxy S4和Galaxy Note3中出现过。这个传感器应该返回的是环境温度,而不是处理器温度。您的设备没有环境温度传感器。你需要寻找一种方法来从cpu的内部传感器或设备的电池中读取数据。
也许这就是你要找的:
how get Current CPU Temperature programmatically in all Android Versions?
发布于 2019-05-22 01:12:49
并不是每个设备上都有传感器。您的设备可能根本没有温度传感器。这是最有可能不存在的数据之一,因为数据通常被曲解,而且用处不是很大。
https://stackoverflow.com/questions/56243203
复制相似问题