Как узнать температуру от Nokia Health Api? - PullRequest
0 голосов
/ 02 мая 2018

При чтении температуры из API здоровья Nokia я получаю следующие показания. Однако это не правильно. В приложении Nokia значения в градусах Цельсия следующие:

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

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

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

1 Ответ

0 голосов
/ 02 мая 2018

Из того, что я мог собрать из документов :

value - значение меры. Это необходимо использовать вместе с параметром unit для получения правильного значения.

type указывает тип меры. В этом случае 12 означает температуру

unit - экспоненциальный множитель, который необходимо умножить на поле значения, чтобы получить фактическое значение в единицах СИ.

Формула:

actualValue = value * (10 ^ unit)

Разбиваем один из ваших примеров:

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

Здесь тип равен 12, так что это температура (следовательно, мы можем принять единицы в Кельвинах, если API возвращает в единицах СИ)

Итак, actualValue = 26918 * (10 ^ -3), что 26.918K

В документах не упоминается, что такое единица измерения температуры. Я предположил, что это Кельвин, потому что это единица измерения СИ. Выдержка из документов:

Значение

Значение меры в единицах S.I (килограмм, метры и т. Д.). Значение должно быть умножено на 10 до степени «единицы» (см. Ниже), чтобы получить реальное значение.

Единица

Степень десяти, на которую нужно умножить параметр «значение», чтобы получить реальное значение. Например: значение = 20 и единица = -1 означает, что значение действительно составляет 2,0

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...