Исследователи из Университета Пердью работают над энергоэффективностью приложений для Android (недавно они показали, что до 75% энергопотребления приложение относится к процессам отображения в нем рекламы), выяснил что многие приложения неправильно используют API управления питанием (wakelock).
API Wakelock в Android был создан для приложений, которым необходимо, чтобы процессы запускались, даже когда телефон находится в режиме ожидания.
Например, почтовой программе необходимо автоматически подключаться к серверу для проверки обновлений.
Однако профессор Ю.
Чарли Ху отметил, что «программисты — всего лишь люди, и когда они допускают ошибки при использовании этого API, батарея может разрядиться всего за несколько часов».
Ученые называют это «энергетическими ошибками без сна» — на самом деле они не позволяют устройству перейти в спящий режим и оставляют его включенным все время.
«Вы не видите никакой разницы», — говорит профессор.
«Вы кладете телефон в карман и думаете, что все в порядке.
Вынимаешь его, а батарея уже разряжена».
В ходе исследования они проверили 187 приложений и обнаружили такую ошибку в 42 программах.
Это меньше четверти, но каждый из них может вызвать существенные проблемы с энергопотреблением смартфона.
Поскольку команда учёных американская, а не британская, они не только указали на проблему, но и предложили решение — модифицировали компилятор так, чтобы он мог обнаружить наличие такой ошибки в коде.
Он будет представлен на конференции MobiSys 2012, которая пройдет в конце июня.
Теги: #Android #разработка #api #управление питанием #разработка Android
-
Рэйли, Джон Уильям
19 Oct, 24 -
Начнем Изучать Stm32: Битовые Операции
19 Oct, 24 -
Нежный Гугл
19 Oct, 24 -
Рабочий Стол Eee Появится В Июне
19 Oct, 24 -
Оптимизация Прямой Связи
19 Oct, 24