Способ приостановки эмулятора Android?
Я занимаюсь разработкой на своем ноутбуке, и для этого я использую различные эмуляторы Android. При работе эмулятор часто занимает большое количество моего процессора и, следовательно, значительно сокращает время автономной работы ноутбука.
Есть ли способ временно приостановить эмулятор или, по крайней мере, закрыть все, что потребляет все ненужные процессоры?
Я знаю, что с помощью sdk r9 и более поздних версий я могу сделать снимок эмулятора и выйти/перезапустить его довольно быстро, но я надеюсь на что-то еще менее инвазивное для моего рабочего потока, чем это.
Ответы
Ответ 1
В Linux вы можете остановить процесс
$ killall --signal STOP emulator
или
$ killall --signal STOP emulator64-arm
В дальнейшем перейдите к
$ killall --signal CONT emulator
или
$ killall --signal CONT emulator64-arm
Gotcha. Если вы обновите Eclipse, убедитесь, что эмулятор не остановлен при перезапуске eclipse. Eclipse остановится при загрузке, ожидая, пока остановленный эмулятор продолжит работу.
Ответ 2
Самая новая версия adt поддерживает моментальные снимки эмулятора, то есть вы можете просто закрыть эмулятор и вернуть его туда, где он был быстро. Поэтому, чтобы решить вашу проблему, просто закройте свой эмулятор и восстановите его, когда вам это нужно.
Проверять моментальный снимок при создании вашего avd:
![Check snapshot enabled when creating your avd]()
Убедитесь, что запуск и сохранение моментального снимка проверены при запуске:
![Ensure launch and save snapshot are checked when launching]()
Ответ 3
Для кросс-платформенного решения это должно приостановить и возобновить выполнение эмулятора:
$ telnet localhost 5554
> avd stop
> avd start
Ответ 4
В Mac OSX
Используя Activity Monitor, найдите идентификатор процесса (PID) для своего эмулятора.
![PID-номер эмулятора]()
Остановить
В терминале telnet к вашему эмулятору:
telnet localhost 5554
Остановить эмулятор
avd stop
В другом окне терминала остановите (приостановите) процесс (19636 - пример PID, вам понадобится конкретный PID для вашего эмулятора из Activity Monitor):
kill -STOP 19636
Для перезагрузки
Чтобы перезапустить эмулятор, из подключения telnet к эмулятору:
avd start
Затем, наконец, продолжите процесс с терминала OSX:
kill -CONT 19636
Я обнаружил, что просто выполнение kill -STOP/CONT не позволит эмулятору вернуться к жизни при попытке перезагрузки. После продолжения процесса эмулятор остался замороженным, хотя его использование ЦП вернулось в нормальное состояние.
Остановка эмулятора через telnet, затем остановка процесса, а затем повторное выполнение этих шагов для перезапуска, казалось, работала безупречно.