Стекло Google имеет (по крайней мере) два датчика температуры.
Один для аккумулятор, а другой для ЦПУ платы.
Вы можете прочитать их как обычный файл.
Батарея
/sys/devices/platform/omap_i2c.1/i2c-1/1-0055/power_supply/bq27520-0/temp
CPU Board
/sys/devices/platform/notle_pcb_sensor.0/temperature
Но имейте в виду, что эти файлы могут изменить местоположение как новые версии Google Glass погружены.
Код (упрощенная версия)
private String readTemperature(String path) throws IOException {
return new BufferedReader(new InputStreamReader(new FileInputStream(new File(path)))).readLine();
}
Интерпретация
значения вы получите от этих файлов в разных единицах измерения.
Температуру платы ЦП необходимо разделить на 1000, чтобы получить температуру в ° C.
Температура батареи должна быть делена на 10, чтобы получить температуру в ° C.
Logcat
LogCat также дает температуру каждые минут или около того в журнале в одной строке.
Можно даже разобрать его:
I/UserEventService(568): [GlassUserEventPerformanceStats ... battery_temperature_milli_centigrade: 34000 board_temperature_milli_centigrade: 44000 ]
Значения
Из того, что я имею опыт, ценности платы ЦП может перейти от 25 ° C до 70 ° C.
Если вы переходите выше 70 ° C, приложение или любое активное приложение, вероятно, будут убиты системой, и вы увидите сообщение «Стекло должно остыть, чтобы работать плавно».
Ядро Linux обычно помещает некоторую информацию о состоянии процессора в/proc, чтобы вы могли взглянуть на что-либо релевантное. –
oki, я нашел два файла, где должна быть сохранена температура. Но ценности там странные. Один показывает 240 других 2453219 7578755432128. Даже в F 240 высок! – Califlower
В действительности нет никакой гарантии, что они имеют смысл, но вы можете закрыть устройство в течение часа, а затем отображать показания в течение нескольких минут после перезапуска или исследовать источники ядра и посмотреть, откуда они. –