0

从诺基亚健康 API 读取温度时,我得到以下读数。然而,这些都不正确。在诺基亚应用程序中,摄氏度读数如下:

35C { value: 26918, type: 12, unit: -3 }

35.6C { value: 23569, type: 12, unit: -3 }

36.7C { value: 27398, type: 12, unit: -3 }
4

1 回答 1

0

从我可以从文档中收集到的信息:

value是度量的值。这需要与unit参数一起使用才能获得正确的值。

type表示度量类型。在这种情况下,12 表示温度

unit是指数乘数,需要与值字段相乘才能获得以 SI 单位表示的实际值。

公式:

actualValue = value * (10 ^ unit)

分解你的一个例子:

{ value: 26918, type: 12, unit: -3 }

这里的类型是 12,所以它是温度(因此,如果 API 以 SI 单位返回,我们可以假设单位是开尔文)

所以,actualValue = 26918 * (10 ^ -3)也就是26.918K

文档没有明确提到温度单位是​​什么。我假设它是开尔文,因为那是温度的国际单位制单位。摘自文档:

价值

以 SI 单位(千克、米等)为单位的度量值。值应乘以 10 的“单位”次方(见下文)以获得实际值。

单元

“值”参数的 10 次方应乘以得到实际值。例如:value = 20 和 unit=-1 表示该值确实是 2.0

于 2018-05-02T09:24:30.953 回答