Android温度计

时间:2010-12-30 10:55:11

标签: android battery temperature

是否有可能在Android中实施温度计?怎么样?

我知道BatteryManager可以用BatteryManager.EXTRA_TEMPERATURE给你电池温度,但我不确定这是否可以用来有效地测量外部温度。

2 个答案:

答案 0 :(得分:4)

虽然StanislavK的答案在技术上是正确的,但在阅读最新的Android Compatibility Definition之后我发现温度计传感器已被弃用,如果包括在内,它必须测量CPU温度。来自官方文件:

  

设备实现可能但应该是   不包括温度计(即   温度传感器。)如果是设备   实施确实包括一个   温度计,它必须测量   设备CPU的温度。它必须   不测量任何其他温度。   (注意,这种传感器类型是   在Android 2.3 API中已弃用。)

因此,对于当前版本的Android来说,似乎无法实现精确的温度计。

答案 1 :(得分:2)

首先,您必须拥有带温度计传感器的设备(温度传感器类型)。然后你可以使用它。

要检查传感器,请在代码中使用SensorManager

//get sensor manager first
SensorManager sensorMgr = (SensorManager)context.getSystemService(Context.SENSOR_SERVICE);

然后使用getSensorList并查找TYPE_TEMPERATURE

<强>提示: 注意,温度更新可能“慢”,即每分钟可能有一次或两次更新。您也可以考虑校准结果(即允许基于实际测量温度的内置传感器结果添加/减去单位)。

BTW :对于外部测量,您可以使用METAR等天气服务的“当前室外温度”(基于当前设备位置)。

相关问题