Как получить доступ к датчику температуры Galaxy S5?

В руководстве на странице 19 есть информация на датчике температуры в S5.

Датчик температуры и влажности позволяет вашему устройству считывать как температуру, так и влажность. Это полезно для подсчета сожженных калорий в S Health.

Но я не могу найти никаких данных о том, как использовать этот датчик.

Кто-нибудь нашел способ использовать этот датчик в нашем собственном приложении?

ИЗМЕНИТЬ

Обратите внимание, что если вы устанавливаете любое стороннее приложение для измерения температуры, в нем будет указано, что ваше устройство (S5) не имеет датчика температуры. Поэтому я не могу использовать стандартный код для доступа к датчику, потому что датчик не обнаруживается. Но приложение Samsung S Health использует этот датчик, и я не уверен, какой API он использует.


person sandalone    schedule 06.05.2014    source источник
comment
Посмотрите, доступен ли он в другом месте в Samsung Mobile SDK. Или перечислите все датчики и посмотрите, есть ли тот, который может совпадать: github.com/commonsguy/cw-omnibus/tree/master/Sensor/Monitor   -  person CommonsWare    schedule 06.05.2014
comment
@CommonsWare Пробовал все типы датчиков, которые имеют дело с температурой, но каждый выдает exception. Таким образом, с обычными типами датчиков мы не можем получить доступ к датчику температуры, поскольку в исключениях говорится, что S5 не имеет датчика температуры. Но инструкция говорит об обратном. Также мобильный SDK Samsung не относится к какому-либо датчику температуры. Наиболее близким из них является S Health API, в котором также не упоминается получение данных о температуре. У Вас есть какие-то предложения? У вас гораздо больше опыта в подобных делах, чем у меня.   -  person sandalone    schedule 09.05.2014
comment
Я бы порекомендовал запустить программу, на которую я ссылался в своем предыдущем комментарии, и изучить результаты. Он создает ListView всех доступных датчиков, а также позволяет просматривать значения, поступающие от этого датчика. По определению он показывает только существующие датчики и поэтому не вызовет исключения.   -  person CommonsWare    schedule 09.05.2014
comment
@CommonsWare Сделал это, а также с моим собственным датчиком записи кода в Log.i(). Оба показывают 19 датчиков и не имеют понятия о температуре. Я также заметил, что нет никакого намека на датчик влажности. Оба указаны в официальном руководстве. Можете ли вы предложить, что еще я могу сделать?   -  person sandalone    schedule 09.05.2014
comment
Цитируя Злую Ведьму Запада: Сдавайся, Дороти! Это, конечно, предполагает, что вас зовут Дороти — не стесняйтесь заменить его своим настоящим именем. :-) Если они не раскрывают его через сенсорную систему и не раскрывают его через Mobile SDK, то, вероятно, они не будут доступны ни в каком поддерживаемом или стабильном виде. Вы можете задавать вопросы на форумах разработчиков Samsung, если вы еще этого не сделали.   -  person CommonsWare    schedule 09.05.2014
comment
@CommonsWare Я тоже могу биться головой о стену :). Спасибо, не думал о его форуме, но обязательно спрошу и там.   -  person sandalone    schedule 09.05.2014


Ответы (2)


Galaxy S5 не имеет датчиков температуры и влажности, в отличие от S4. Samsung объявила об этом и, близкая к публикации, решила не выпускать ее. Похоже, причина заключалась в том, что эти два датчика не могли работать вместе с функцией защиты от воды.

Приложение S Health имеет возможность измерять температуру тела, но его API в данный момент скрыт. Это означает, что мы понятия не имеем, измеряет ли он температуру через внешние устройства (Gear) или может измерять ее с помощью датчика сердечного ритма. Также мы не знаем, может ли он измерять температуру воздуха (вероятно, нет).

person sandalone    schedule 17.05.2014

http://developer.android.com/reference/android/hardware/Sensor.html#TYPE_AMBIENT_TEMPERATURE

Я думаю, это то, что вы ищете

person user3573421    schedule 06.05.2014
comment
@sandalone Я видел это, но ты пробовал то, что я предложил? TYPE_AMBIENT_TEMPERATURE — это новое значение, ранее для считывания температуры вам приходилось использовать TYPE_TEMPERATURE. Может быть, сторонние приложения все еще используют это? Кроме того, почему бы вам не попробовать декомпилировать приложение Samsung, которое использует датчик температуры, вы можете найти подробную информацию о том, как его использовать. Это может быть неэтично, но это верный способ узнать, используют ли они собственный код или полагаются на официальные API Android. - person user3573421; 06.05.2014
comment
Также см. это: reddit.com/r/tasker/comments/1fvdo8/ Может работать и для S5 - person user3573421; 06.05.2014
comment
Он ломается и на этом датчике. - person sandalone; 08.05.2014