Как имитировать низкий уровень заряда аккумулятора на устройствах Android

Может ли кто-нибудь сказать мне, как я могу имитировать низкий уровень заряда батареи в моем корневом устройстве?

Я прошел этот вопрос, но не нашел много информации об этом.

Ответ 1

Имитация разряженной батареи по умолчанию не предоставляется, насколько я знаю. (если вы используете eclipse как im). Но если вы работаете в Linux, вы можете использовать telnet для подключения к эмулятору ur localhost и выполнять действия "Power" (не используются, возможно, вы можете попробовать) http://handycodeworks.com/?p=46

Но вам не нужно проходить этот процесс. Просто зарегистрируйте широковещательный приемник для ACTION_BATTERY_LOW, и он гарантированно будет вызываться в сценариях с низкой батареей.

Надеюсь, что это поможет

EDIT:

вот прямой ответ (предполагая, что ур работает с окнами).

Включить 'telnet' в windows, если вы уже не имеете.

Панель управления → программы → в разделе "программы и функции" выберите "включить или отключить функции Windows" → он открывает новое окно, выберите "telenet client" и нажмите "ОК".

запустите командную строку с правами администратора (в AllPrograms найдите "cmd" и щелкните правой кнопкой мыши по ней и выберите "запустить как admin" ).

затем используйте эти команды

1)telnet localhost 5554 //where 5554 is your emulator id, which is displayed top left   corner of ur emulator
2)power capacity 10   //set the battery level to 10%
3)power ac off    //turns off charging mode

Теперь вы можете увидеть диалог с батареей в эмуляторе.

Ответ 2

С помощью эмулятора Android Extended Controls теперь можно установить уровень заряда батареи с помощью слайдера GUI под названием "Уровень заряда".

Чтобы получить доступ к этому, запустите эмулятор. Затем нажмите "..." в нижней части панели настроек (которая находится справа от эмулятора).

введите описание изображения здесь

Откроется панель "Расширенные элементы управления", которая содержит пункт меню "Аккумулятор":

введите описание изображения здесь

Ползунок уровня заряда от 0 до 100%. Вы также можете имитировать неисправную/перегретую/иную физическую батарею и отключить зарядное устройство, отрегулировав другие элементы управления выпадающим списком.

Ответ 3

Извлечен ли аккумулятор? Если это так, получите запасную батарею и сохраните ее в состоянии низкого заряда для вашего тестирования батареи.

Ответ 4

Ссылка из @user2240369 на самом деле приводит вас к правильному ответу. Вы должны сделать это:

telnet localhost 5554 #or wahtever port you are using
power capacity 60

Ответ 5

Вы можете сделать ActivityInstrumentationTestCase2 и вызвать различные методы onPause, onStop и onDestroy для имитации низкой в памяти может быть вызвана только onPause:

В ситуациях, когда системе требуется больше памяти, она может убить приостановленную процессы для восстановления ресурсов. Из-за этого вы должны быть уверены что все ваше состояние будет сохранено к моменту вашего возвращения из этого функция. В общем случае onSaveInstanceState (Bundle) используется для сохранения per-instance в активности, и этот метод (onPause) используется для хранения глобальные постоянные данные (в контент-провайдерах, файлах и т.д.)