Могу ли я настроить свой эмулятор Android, чтобы он работал быстрее?

Я использую эмулятор Android для запуска своих программ. Но это очень медленно. Запуск и отображение главного экрана занимает около 90 секунд. Могу ли я настроить его, чтобы значительно сократить это время? Спасибо


person Bohemian    schedule 28.12.2009    source источник
comment
Включить снимки: stackoverflow.com/questions/1554099/slow-android-emulator   -  person Jacksonkr    schedule 31.10.2011


Ответы (13)


У меня была аналогичная проблема (здесь). Однако мой занимал 10-15 минут. 90 секунд - это невероятно быстро, учитывая большое количество потоков в дискуссионных группах Android. Эмулятор медленный по своей природе, и единственная рекомендация, которую я прочитал, заключалась в том, чтобы держать эмулятор открытым, а не закрывать его и запускать повторно. Однако, как упоминалось в моей беседе, если у вас есть физическое устройство Android, вы можете просто запустить его на нем. Это то, чем я занимаюсь сейчас, и это был первоклассный совет. Нет долгого ожидания. Если у вас нет физического устройства, я могу только предложить вам не закрывать эмулятор между изменениями кода, так как система распознает изменение.

person keyboardP    schedule 28.12.2009
comment
Да, точно. Дайте эмулятору запустить и перезапустите код после редактирования. Это похоже на горячую замену. Спасибо - person Bohemian; 28.12.2009
comment
Я не смотрел ссылку, но для моей системы я смотрю на моменты, которые больше похожи на: первая загрузка: 90 секунд, последующая загрузка: загрузка 15-20 секунд. Я не пользуюсь молниеносным оборудованием (ноутбук, core2-duo 2 ГГц, 4 ГБ оперативной памяти), Ubuntu ... возможно ли что-то еще замедляет его? - person Jeremy Logan; 28.12.2009
comment
Действительно, очень полезно оставить его включенным. Я лично перешел на использование телефона как единственного средства отладки. Просто подключите кабель, настройте его, и он сразу заработает, не нужно ждать, плюс поддерживает изменение ориентации ... С уважением, Ари - person BeMeCollective; 28.12.2009
comment
@fiXedd: Я не уверен, есть ли столько способов ускорить это. Прежде, чем я фактически использовал физическое устройство, я искал различные способы увеличить скорость эмулятора, но я не мог найти о нем много информации. Даже если вы можете внести несколько незначительных изменений, я не знаю, насколько значительным будет ускорение в текущих версиях эмулятора. - person keyboardP; 28.12.2009
comment
Вы не можете запускать разные версии приложения на одном устройстве. Как собираетесь тестировать 1.5 на аппарате 2.1? - person gcb; 23.10.2010
comment
@gcb - Я не занимался программированием для Android в последнее время, поэтому не знаю, стали ли эмуляторы в последнее время быстрее. Тем не менее, если вам нужно протестировать свою программу на устройстве, которого у вас нет, у вас действительно нет другого выбора, кроме как использовать эмулятор. Хорошей идеей может быть доведение вашей программы до приличного уровня на вашем текущем телефоне, а затем использование эмулятора для других версий. - person keyboardP; 24.10.2010

используйте эти 3 варианта.

emulator --cpu-delay 0 --no-boot-anim --cache ./cache --avd avd_name

первые два очевидны. третий сделает память эмулятора постоянной. вы можете указать его на любой файл, который не уничтожается при загрузке (такое случается с / tmp), это похоже на постоянно включенное устройство гибернации.

person gcb    schedule 25.10.2010
comment
Где мы это сохраняем? В каком месте файла? - person Thompson; 28.02.2015
comment
@Thompson, если вы имеете в виду, где будет файл кеша, ну где угодно. ./ означает в том месте, где я нахожусь, когда я запускаю эту команду. но вы можете заменить его любым файлом (который будет создан, если не существует), например --cache /home/thompson/androidcache - person gcb; 01.03.2015

Если вы абсолютно не можете использовать физическое устройство Android, вы можете запустить ОС Android на Virtualbox, а затем получить IP-адрес эмулируемого Android. Затем вы должны подключить ADB к эмулятору, используя этот IP-адрес. В этом суть. Я написал более подробное руководство по этому подходу в своем блоге. http://www.bobbychanblog.com/2011/07/faster-android-emulator-alternative-using-virtualbox/

person Bobby    schedule 11.07.2011

  1. Параметр -no-boot-anim хорош.
  2. Не выключайте эмулятор, просто перезапустите приложение.
  3. Для дальнейшего ускорения попробуйте новую функцию моментальных снимков, которая описана здесь.
person Tomas Andrle    schedule 24.03.2011

Уменьшение масштаба эмулятора ускорило загрузку моего эмулятора ...

emulator -cpu-delay 0 -no-boot-anim -cache ./cache -scale 0.8 -avd avd_name
person sulabh    schedule 14.03.2011
comment
на самом деле я получил худшие результаты с -scale. Без замера ничего не заметно, но было хуже. - person gcb; 09.06.2011

на самом деле это все отличные ответы, но думали ли вы об изменении оперативной памяти со 96 МБ по умолчанию на что-то вроде 512? работает на меня :)

person jay    schedule 21.04.2011

Если у вас есть мобильное устройство, гораздо быстрее (и надежнее) скомпилировать его через USB на устройство. Компиляция и установка на ваш телефон занимает около 5 секунд, я больше не использую эмулятор - он просто медленный.

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

person Ricky    schedule 14.05.2011
comment
Настоящее устройство - действительно единственный выход. Это просто улицы быстрее. - person Robert Massaioli; 28.06.2011
comment
Невозможно использовать одно устройство для каждой комбинации размера экрана и версии ОС. Даже если бы это было так, люди бы спросили, как держать на столе 12 телефонов :) ... основная проблема с эмулятором заключается в том, что он использует только один процессор даже на 8-ядерном i7. Но это по-прежнему единственный способ автоматизировать ночные тесты на нескольких устройствах (а поскольку он использует только один процессор, вы можете запустить 8 заданий :) - person gcb; 28.08.2013

Я рекомендую вам использовать Genymotion. Это очень быстрый эмулятор (в моем случае запускается менее 10 секунд)

На нем установлены приложения Google, в том числе приложение Google Play, которое дает возможность загрузить любое приложение. Это хорошая функция для тестирования приложений с помощью Maps Api.

person Mongi Zaidi    schedule 28.10.2013

Вам необходимо установить Intel HAXM

  • откройте вас SDK и установите

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

  • Создать новый AVD

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

  • Теперь при запуске вы должны получить это

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

в противном случае вам нужно будет установить Accelerated Execution Manager

См. Запуск нового эмулятора Intel для Android, чтобы узнать, как ты делаешь это

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

узнайте, насколько быстрее вы получите видео

person Mina Gabriel    schedule 08.02.2014
comment
Я выполнил шаги, которые вы упомянули, и я могу запустить свой эмулятор с использованием виртуального устройства Intel x86_64 за 60 секунд .. но я не вижу, что какой-либо HAX работает, а эмулятор работает быстро в виртуальном режиме. У меня 64-разрядная Windows 7. Установлен Intel HAXM 1.1.1. На моем ПК также поддерживается виртуализация. - person Lucky; 16.12.2014

При разработке игры Elastic World я столкнулся с той же проблемой. После нескольких минут ожидания запуска эмулятора игра работала с максимальной частотой 20 кадров в секунду. Даже на слабых устройствах Android я мог легко получить 60 FPS.

Поэтому я перешел на машину VMWare Android, следуя инструкциям с этого сайта: http://www.android-x86.org/documents/installhowto/

Тот же игровой цикл теперь работает со скоростью 250 кадров в секунду. (на этой скорости нельзя играть, и у меня игра ограничена до 60 кадров в секунду, но, преодолевая это ограничение, она дает 250 кадров в секунду)

person Pedro Soares    schedule 04.07.2012

Попробуйте использовать для эмулятора меньшее разрешение, например HVGA. Эмулятор становится медленнее, чем больше пикселей ему требуется для рендеринга, поскольку он использует программный рендеринг.

Также, если на вашем компьютере достаточно памяти, добавьте в эмулятор не менее 1 ГБ памяти. Это значение «Размер оперативной памяти устройства» во время создания AVD.

Также установите флаг «Включено» для снимков. Это сохранит состояние эмулятора и позволит ему запускаться намного быстрее.

person bilalhaider    schedule 18.01.2012

Просто установите флажок «Снимок» в вашем AVD Manager. Он сохранит состояние вашего AVD, когда вы его закроете. Итак, как только вы снова запустите эмулятор, это сохраненное состояние будет загружено. Следовательно, время загрузки вашего AVD будет значительно сокращено.

person commanderdileep    schedule 13.11.2012

  1. Сначала я следую этому введению
  2. Запустите эмуляцию с помощью команды: emulator -cpu-delay 0 -no-boot-anim -cache ./cache -avd <adv-name> -gpu on (перейдите по ссылке и ссылка)

результаты выдаются примерно в 2-3 раза быстрее

person nguyên    schedule 29.08.2013