6

当我在 Galaxy S3 上测试时,我正在 android 中创建一个温度计应用程序,它表明

TYPE_AMBIENT_TEMPERATURE NOT Available

TYPE_TEMPERATURE NOT Available

我想知道 Galaxy S3 有没有上面的传感器?或者我怎样才能解决这个问题来获得温度?

4

3 回答 3

1

正如 Yohannes 在评论中所说,您只能计算标准大气温度,这对于主要用于航空的日常使用没有用处。

这是温度估计与气压高度的关系。http://home.anadolu.edu.tr/~mcavcar/common/ISAweb.pdf(第 2 页)。

这似乎是使用带有蓝牙或类似设备的外部温度传感器的唯一方法,并且在您的应用推广中需要此传感器。

这真的很酷: http ://www.bee-wi.com/bbw200,us,4,BBW200-A1.cfm

于 2016-04-04T02:07:19.380 回答
0

检查特定目标手机上是否存在传感器的一种简单方法是安装像 AndroSensor 这样的应用程序。这将列出所有可用的传感器。

我怀疑如果缺少底层传感器,您将能够做很多事情。您可以使用天气服务来获取设备所在位置的当前温度,但这对温度计没有帮助。

于 2014-04-02T05:18:59.480 回答
0

不确定这是否也适用于 Galaxy S3,但您可以尝试查找类型值高于 的传感器TYPE_DEVICE_PRIVATE_BASE。许多手机(例如 Nexus 5x 和 Pixel 3)都有一个甚至多个传感器,通过它显示温度读数,您通常可以通过传感器的名称来判断(例如“BMI160 温度”或“BMP380 温度”,两者都在像素 3)。

这些“供应商定义的传感器”通常来自需要温度读数以进行补偿/校准的传感器(BMI160 是 IMU,BMP380 是 Pixel 3 的气压计)。尤其是气压计很可能有温度通道。

但是,制造商不通过官方TYPE_AMBIENT_TEMPERATURE类型提供这些温度读数是有充分理由的:将温度计放置在从内部加热的封闭设备内并不是测量环境温度的好方法。特别是如果温度读数只是为了补偿传感器的温度漂移,那么您将不会得到任何有用的信息,因为您主要测量手机内部的温度。即使手机正式测量环境温度,由于同样的原因,结果也不会很精确。

于 2019-10-09T20:55:44.133 回答