是否可以在Android中实现温度计?如何?

我知道 BatteryManager 可以给您电池温度 BatteryManager.extra_temperature, ,但我不确定是否可以将其用于精确测量外部温度。

有帮助吗?

解决方案

虽然Stanislavk的答案在技术上是正确的,但阅读了最新的答案 Android兼容性定义 我发现温度计传感器已弃用,如果包括,则必须测量CPU温度。从官方文件中:

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

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

其他提示

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

要检查传感器,在代码中使用 Sensormanager:

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

然后使用 getSensorlist 并寻找 type_temperature .

提示: 请注意,温度更新可能是“慢”的,即每分钟可能有一个或两个更新。您也可能会考虑校准结果(即允许根据实际测量温度添加/提取单元为内置的传感器结果)。

顺便提一句: :对于外部诱惑,您可以使用诸如元(基于当前设备位置)之类的天气服务中的“当前外部温度”。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top