Почему эмулятор Android такой медленный? Как мы можем ускорить эмулятор Android? [закрыто]

3401

У меня   процессор Celeron с частотой 2,67 ГГц и 1,21   ГБ оперативной памяти на компьютере с Windows XP Professional x86 .

Насколько я понимаю, Android-эмулятор должен запускаться довольно быстро на такой машине, но для меня это не так. Я следовал всем инструкциям по настройке IDE, SDK, JDK и т. Д. И добился некоторого успеха в быстром запуске эмулятора, но это очень редко. Как я могу, если возможно, решить эту проблему?

Даже если он запускается и загружает домашний экран, он очень вялый. Я пробовал Eclipse IDE в версии 3.5 (Galileo) и 3.4 (Ganymede).

Peter Mortensen
источник
79
Альтернативой является Genymotion. genymotion.com . Это намного быстрее. Простая установка.
Сукита Удугамасоория
9
Я нашел эмулятор для запуска (и, кстати, я имею в виду waaaay) быстрее на Linux. У меня есть ноутбук с двойной загрузкой, в Windows запуск эмулятора занимает около 15 минут, а у linux - около 30 секунд. Я не знаю о других операционных системах, таких как OSX, но для меня это похоже на Windows.
Даниэль ван ден Берг
11
Сообщается, что Android Studio 2.0 имеет не только гораздо более быстрый эмулятор, но и использует «мгновенный запуск», который позволяет за считанные секунды развернуть определенные изменения в вашем источнике, например XML, без необходимости перестраивать APK и перераспределены. См. Android-developers.blogspot.co.uk/2015/11/…
Карл Уолли
12
я думаю, что ваш баран очень мал для эмулятора, чтобы работать быстрее.
Зия У Рахман
5
Одним из способов избежать путаницы в комментариях может быть наличие небольшого окна с надписью о том, что вопрос старше, скажем, 2 года. Технология быстро меняется, и вы хотели бы, чтобы возраст влиял на рейтинг, даже если вопрос не следует закрывать / архивировать, как на небольших сайтах.
Хенрик Эрландссон

Ответы:

1436

Обновить

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

Нажмите на кнопку редактирования эмулятора, затем нажмите Show Advanced Setting. Затем включите, Quick Bootкак показано на скриншоте ниже.

Быстрая загрузка

Android Development Tools (ADT) 9.0.0 (или более поздняя версия ) имеет функцию, которая позволяет вам сохранять состояние AVD (эмулятора), и вы можете сразу же запустить свой эмулятор. Вы должны включить эту функцию при создании нового AVD или вы можете просто создать его позже, отредактировав AVD.

Кроме того, я увеличил Device RAM Sizeв 1024которых результаты в очень быстрый эмулятор.

Обратитесь к приведенным ниже скриншотам для получения дополнительной информации.

Создание нового AVD с функцией сохранения снимка.

Эмулятор Android с функцией сохранения снимка.

Запуск эмулятора из снимка.

Запуск эмулятора из снимка.

А для ускорения эмулятора вы можете обратиться к разделу «Ускорить эмулятор Android»! :

Vikas Patidar
источник
23
При обновлении существующего устройства стирайте пользовательские данные при первом запуске из моментального снимка
Марк Баккер
16
Я установил AVD как это, но кажется все еще медленным, когда я перезагружаю AVD, почему?
Чжуншу
9
@Peter Ehrlich: просто зайдите в Window> Android SDK и AVD Manager и выберите AVD, который вы хотите запустить из списка, а затем нажмите кнопку « Пуск» на правой панели. Он откроется так же, как вы хотите.
Викас Патидар
3
Я получил сообщение «Не удалось выделить память» при настройке 1024. Он также отображал предупреждение в нижней части окна конфигурации, говорящее: «В Windows эмуляция ОЗУ более 768 М может произойти сбой в зависимости от ...» Я попытался установить его на 770, и тогда это сработало. Она не смогла установить его на 800.
благоговение
5
@ Msmit1993: Эмулятор Intel x86 можно использовать с инструментом HAX. Поверьте, вы будете удивлены, что эмулятор быстрее, чем ваше реальное устройство.
Викас Патидар
1135

ВАЖНОЕ ПРИМЕЧАНИЕ : Пожалуйста, сначала обратитесь к списку Intel о VT, чтобы убедиться, что ваш процессор поддерживает Intel VT.

HAXM ускоряет медленный эмулятор Android

HAXM расшифровывается как "Intel Hardware Acceleted Execution Manager"

В настоящее время он поддерживает только Intel® VT (технология виртуализации Intel).

Эмулятор Android основан на QEMU . Интерфейс между QEMU и драйвером HAXM в хост-системе разработан независимо от производителя.

HAXM

Шаги по настройке среды разработки Android для HAXM

  1. Обновите Eclipse: убедитесь, что ваша установка Eclipse и плагин ADT полностью обновлены.

  2. Обновите инструменты Android: после каждого обновления плагина Eclipse важно обновлять инструменты Android SDK. Для этого запустите Android SDK Manager и обновите все компоненты Android SDK. Чтобы воспользоваться HAXM, вы должны быть как минимум на версии 17.

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

  • Загрузите образы системы x86 Atom и драйвер Intel Hardware Accelerated Execution Manager . Следуйте изображению ниже:

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

  • Установите драйвер HAXM, запустив «IntelHaxm.exe». Он будет расположен в одном из следующих мест:

    • C:\Program Files\Android\android-sdk\extras\intel\Hardware_Accelerated_Execution_Manager

    • C:\Users\<user>\adt-bundle-windows-x86_64\sdk\extras\intel\Hardware_Accelerated_Execution_Manager

    Если установщик завершается неудачно с сообщением о том, что Intel VT должен быть включен, необходимо включить это в BIOS . Описание того, как это сделать, см. В разделе «Включение Intel VT (технология виртуализации)» .

Установите .exe или .dmg

  • Создайте новый x86 AVD: следуйте изображению ниже:

Создать AVD

  • Или что касается нового SDK, Введите описание изображения здесь
Prashanth Sams
источник
19
Хорошая рецензия. Если вы ищете документы от Google (включая несколько отличий для Mac), их можно найти здесь: developer.android.com/tools/devices/emulator.html#accel-vm
Todd Price
103
Не работает на Linux.
Кшитиз Шарма
14
Я попробовал это решение. Это сработало. Тем не менее, я установил с помощью MonoDroid и не мог найти IntelHaxm.exe в течение минуты. Это было здесь: C: \ Users \ jbarneck \ AppData \ Local \ Android \ android-sdk \ extras \ intel
Rhyous
11
Вау, не могу отблагодарить вас достаточно! Не могу поверить, что я все это время жил с медленным эмулятором. Я думал, что это нормально. Я действительно скучаю по времени быстрого запуска, разве нет способа включить моментальный снимок наряду с ускорением GPU?
Реда
3
Это прекрасно работает. Спасибо Лор за то, что поделился этим! Когда «Use Host GPU» включен, эмулятор сильно мерцает, но и без Host GPU это действительно быстро.
user1619275
595

Попробуйте Android x86 . Это намного быстрее, чем эмулятор Google Android. Следуй этим шагам:

  1. Установите VirtualBox .
  2. Загрузите нужный вам файл ISO .
  3. Создайте виртуальную машину под Linux 2.6 / Other Linux, 512 МБ ОЗУ, HD 2 ГБ. Сеть: PCnet-Fast III, подключенная к NAT . Вы также можете использовать мостовой адаптер, но вам нужен DHCP- сервер в вашей среде.
  4. Установите Android x86 на эмуляторе, запустите его.
  5. Нажмите Alt+ F1, введите netcfg, запомните IP-адрес, нажмите Alt+ F7.
  6. Запустите cmd в своей системе Windows XP, измените каталог на каталог инструментов Android, введите adb connect <virtual_machine_IP>.
  7. Запустите Eclipse, откройте плагин ADT, найдите устройство и наслаждайтесь!
Pehat
источник
6
поэтому я подключился. Как мне сделать экран вертикальным? Я также нигде не вижу аппаратных кнопок телефона.
Алекс
9
См. Groups.google.com/group/android-x86/browse_thread/thread/… и groups.google.com/group/android-x86/browse_thread/thread/… для изменения разрешения экрана.
Гили
4
Просто чтобы напомнить вам, ребята, что вам нужно включить интеграцию мыши в меню устройства, если вы хотите использовать мышь в эмуляторе!
Какопаппа
13
Обратите внимание, что если вы используете что-то специфичное для ARM (например, Mono для Android), оно не будет работать на Android x86.
Мэтью Гроувс
11
Для меня netcfg показывает lo 127.0.0.1 255.0.0.0 0x00000049 Здесь есть IP 127.0.0.1, который я должен упомянуть в команде adb? показывает "не удается подключиться к 127.0.0.1:5555" Пожалуйста, помогите.
Риз
318

ОБНОВЛЕНИЕ: Последняя версия Android Studio (2.x) внесла значительные улучшения в комплектный эмулятор. Это отзывчивый и имеет целый ряд функций.

Для тех, кто еще заинтересован: попробуйте использовать Genymotion . Вы можете скачать версию для Windows / Mac OS X / Linux после регистрации. Плагин для Eclipse также доступен:

Установка плагина может быть выполнена путем запуска Eclipse и перехода в меню «Справка / Установка нового программного обеспечения», а затем просто добавьте новый сайт обновлений со следующим URL-адресом: http://plugins.genymotion.com/eclipse . Следуйте инструкциям Eclipse.

Этот эмулятор быстрый и отзывчивый.

GenyMotion позволяет управлять различными датчиками вашего устройства, включая уровень заряда батареи, уровень сигнала и GPS. Последняя версия теперь также содержит инструменты камеры.

блаффи
источник
52
Genymotion, безусловно, лучший способ для разработки / тестирования вашего приложения. Это не только быстрее и лучше, чем традиционный эмулятор. Это быстрее, чем реальное устройство тоже. Я использую его для 99,99% моих развертываний, так как это означает, что я могу видеть результаты за короткое время. Это также означает, что я могу использовать OpenGL ES и другие вещи, которые недоступны в обычном эмуляторе.
Эуриг Джонс
2
Более новые версии Genymotion не включают Сервисы GooglePlay. Эта ссылка показывает, как установить их вручную: forum.xda-developers.com/showthread.php?t=2528952
Apfelsaft
2
Это нормально, пока вы не переустановите VBox или любой из инструментов, которые они используют, затем он перестанет работать - удаление не поможет. Но это было хорошо, пока это продолжалось.
milosmns
5
Genymotion больше не является бесплатным (как это было, когда я использовал его в прошлый раз), Не уверен, что это все еще лучший выбор для разработчиков
Zain Ali
6
Начиная с Android Studio 2, эмулятор был улучшен в десять раз. Он имеет множество функций и хорошо работает.
блаффи
213

Эмулятор, включенный в вашу (старую) версию Eclipse, работает очень медленно.

Последние эмуляторы работают быстрее, чем в 2010 году. Обновите SDK / IDE.

Лично я использую реальный телефон, чтобы делать свои тесты. Это быстрее и тесты более реалистичны. Но если вы хотите протестировать свое приложение на множестве разных версий Android и не хотите покупать несколько телефонов, вам придется время от времени использовать эмулятор.

Николас Рауль
источник
1
VMware работает с незаметной разницей в производительности по сравнению с реальной машиной. Даже если эмулятор эмулирует ARM, он должен работать быстрее, даже на той же системной частоте, а мой компьютер работает на частоте 3,6 ГГц, что медленнее, чем телефон на 500 МГц для Android.
NickSoft
@rds - Так должен ли мой AVD эмулировать Intel вместо ARM для более быстрой загрузки?
Trojan.ZBOT
Нет, это не оптимизировано для x86 ... оно эмулирует аппаратное обеспечение телефона x86 - в то время как обычный телефон в настоящее время легко превосходит рассматриваемую машину :)
Martin Zeitler
Вы же понимаете, что оба запускают один и тот же эмулятор, верно? android-sdk \ tools \ emulator-x86.exe, ничего общего с Eclipse, вы, вероятно, только начали использовать образы Intel x86 с Intel HAXM.
Дан Дар, 3
Хорошо по сравнению с тем, как медленно они были в те времена, когда они идут молниеносно.
Боллинг
138

Запуск эмулятора очень медленный. Хорошо, что вам нужно запустить эмулятор только один раз. Если эмулятор уже запущен и вы снова запускаете приложение, эмулятор переустанавливает приложение относительно быстро. Конечно, если вы хотите узнать, насколько быстро он будет работать на телефоне, лучше всего протестировать его на реальном телефоне.

Джей Аскрен
источник
40
Если это займет пару часов, возможно, что-то не так. Это займет всего пару минут для меня.
Джей Аскрен
какая у вас конфигурация оборудования и операционная система?
Младший Mayhé
@ Junior Mayhe: я программировал для Android, используя Windows, Mac и Linux. Я использую Mac чаще всего прямо сейчас. Компьютеры, которые я использовал, имеют от 2 до 4 гигабайт оперативной памяти и довольно современный процессор от 2 до 3 ГГц. Во всех случаях, кажется, сначала требуется несколько минут для запуска эмулятора, но затем переустановка приложения происходит довольно быстро.
Джей Аскрен
3
@ user286101: загрузка нового apk в уже работающий эмулятор на моем старом ноутбуке занимает не более 10 секунд (двухъядерный процессор 1,6 ГГц, 1 ГБ ОЗУ), единственная проблема в том, что я часто забывал оставить эмулятор включенным, поэтому пришлось пройти через медленный процесс перезагрузки (который занимает 3-5 минут).
Ли Райан
К сожалению, @LieRyan «должен занимать не более 10 секунд», это примерно то же время, что и проект C ++ симметричного размера на современных машинах.
kizzx2
129

Intel выпустила рекомендованные инструкции по установке эмулятора ICS 15 мая 2012 года. Это сработало для меня. Эмулятор теперь быстрый, а интерфейс - плавный.

Первая половина инструкций достаточно подробна, поэтому я предполагаю, что вы смогли установить образы систем Intel x86 Atom с помощью менеджера SDK Android, а также Intel HAXM.

Теперь, чтобы убедиться, что все остальное настроено так, чтобы вы могли наслаждаться высокопроизводительным эмулятором:

И начать это:

sudo kextload -b com.intel.kext.intelhaxm (mac)

Если HAXM работает правильно, вы можете увидеть это сообщение при запуске эмулятора:

HAX работает и эмулятор работает в быстром виртуальном режиме

В противном случае вы можете увидеть эту ошибку:

HAX не работает и эмулятор работает в режиме эмуляции:
удалось открыть модуль hax

  • Используйте эмуляцию GPU. На момент написания этой статьи нельзя использовать параметр «Снимок» при использовании эмуляции графического процессора. Убедитесь, что для эмуляции графического процессора установлено значение «да».

  • Установите для памяти устройства значение 1024 МБ или более , но не более, чем параметр Intel HAXM. Я использую 1024 МБ на устройство и 2048 для HAXM.

Всегда перепроверяйте настройки после сохранения! Эмулятор очень требователен к настройкам, и он вернет конфигурации, не сообщая вам.

С этими настройками больше не появляется программная клавиатура, а также экранная кнопка «Назад», меню и последние клавиши. Похоже, что это ограничение текущего образа системы ICS Intel x86. Вам нужно будет использовать сочетания клавиш .

В Mac OS вам нужно будет держать fn+ controlдля F1- F12ключей к работе. Страница вверх / вниз / влево / вправо может быть выполнена с помощью клавиш управления + стрелки.

James Wald
источник
Будьте осторожны при использовании виртуальной машины с Intel HAXM. Очевидно, виртуальная среда может стать поврежденной, если системная память исчерпана.
Джеймс Уолд
android-dev.ro/web/guest/home Это еще одна хорошая пошаговая инструкция по настройке HAXM x86 AVD в Eclipse. Дополнительно объясняется, как настроить API Google.
Сулай
2
Не уверен, что я что-то не так делаю, но я внимательно следовал руководству и получил: «HAX работает, и эмулятор работает в режиме быстрого виртуального подключения», непосредственно перед тем, как устройство запустилось, но ... оно на самом деле загружается даже медленнее, чем в оригинальной версии arm , Я на Mac и CPU поддерживает VT.
Джаярджо
4
Это правильный ответ .. У меня установлен процессор Intel x86 и у меня включен GPU. Эмулятор очень отзывчивый и плавный с этими настройками. НАКОНЕЦ-ТО ! Если вам нужна помощь в настройке Windows или Mac, дайте мне знать. Adios all
Тони
2
Спасибо за это, протестировано на Windows 7 Pro, Intel Core i7 3770 и все работает. На окнах Intel Hardware Accelerated Execution Manager (HAXM) нужно только установить, он запустится автоматически. Просто создайте AVD с Intel Atom x86 и убедитесь, что выбрано «использовать хост GPU»
gerrytan
111

Вы можете создать emulator.bat с помощью следующей команды, чтобы запустить эмулятор. Это начнется быстрее.

emulator.exe -cpu-delay 0 -no-boot-anim @<avd name>

Или в Unix (Mac или Linux):

emulator -cpu-delay 0 -no-boot-anim @<avd name>
andgps
источник
Добавление -no-boot-animсократило время запуска примерно на 38%. Спасибо!
Timothy003
3
(Android Studio) Выберите « Выполнить»> «Редактировать конфигурации ...» . На левой панели диалогового окна Run / Debug Configurations выберите или создайте конфигурацию. В разделе « Параметры целевого устройства» выберите «AVD». На вкладке Эмулятор введите -no-boot-animв поле Дополнительные параметры командной строки
Иван Чау
103

Я заметил, что эмулятор запускается намного быстрее, если не подключен Dalvik Debug Monitor Server (DDMS). Таким образом, если вы запускаете эмулятор из диспетчера виртуальных устройств «SDK Setup.exe» и Eclipse не запускается, эмулятор работает быстрее.

Если вы запускаете эмулятор из Eclipse: здесь есть DDMS, поэтому иногда эмулятор работает очень медленно, а иногда быстрее.

Peter Mortensen
источник
2
@Shekhar: DDMS = Сервер мониторинга отладки Dalvik
Lie Ryan
если мы запустим эмулятор через командную строку Cordova в Git Bash ... как отключить Dalvik Debug Monivor Server?
gumuruh
61

Эмуляторы медленные. Вы действительно ничего не можете с этим поделать, но есть альтернативы эмулятору.

  1. Genymotion - Предпочтительный

  2. VirtualBox

  3. BlueStacks

  4. YouWave

  5. Эмулятор Windows Android

  6. Баночка с фасолью

  7. Энди

Чтобы сделать ваш эмулятор быстрее, вы можете разместить графический процессор и использовать более легкую версию Android ( Android 2.3 (Gingerbread)). Разработка на Mac была бы лучше. Зачем использовать эмулятор, кстати? Использование реального телефона имеет больше смысла.

JRE.exe
источник
Я использовал Genymotion, и я должен сказать, что он сравнительно быстрый, чем стандартный эмулятор Android.
Анураг
«Зачем использовать эмулятор, кстати? Использование реального телефона имеет больше смысла». Я на работе, и у нас не хватает телефонов, чтобы ходить. Я не тестер, поэтому я не получаю приоритет от них.
Almo
эмулятор не медленный, а ваша машина. Предлагаемые x86 изображения.
Мартин Цайтлер,
@ Almo, Реальные телефоны - хороший выбор, но эмулятор дает вам пространство, чтобы сделать ваше приложение совместимым с большей частью дизайна Android версии + на разных экранах ... это способ позволить вашему приложению работать с меньшим количеством ошибок, прежде чем оно перейдет к тестированию с реальными телефонами. Я лично видел, что некоторые проблемы с дизайном можно легко решить, проверив их в разных эмуляторах ... Не все могут позволить себе иметь по крайней мере 1 телефон с разными размерами экрана и
ОС
50

Начиная с версии 17 Android SDK Tools, эмулятор может использовать графическое ускорение и расширения, предоставляемые процессором, для повышения эффективности. Необходимые условия, полная конфигурация и примечания пользователя находятся по адресу:

http://developer.android.com/guide/developing/devices/emulator.html#acceleration

Для включения ускорения графического процессора запустите эмулятор из командной строки или добавьте «-gpu on» к дополнительным параметрам командной строки эмулятора в конфигурации AVD.

emulator -avd <avd_name> -gpu on

Для использования расширений процессора вы должны установить драйвер (будьте осторожны, поскольку он может конфликтовать с существующими драйверами VirtualBox или VMware ). После установки он будет использоваться автоматически всякий раз, когда вы используете AVD на базе x86.

Jokin
источник
Я только что обнаружил это сам. Заставляет эмулятор работать почти так же, как реальное устройство!
Гак
Обратите внимание, что для использования ускорения GPU вы должны использовать Android 4.0 или более позднюю версию. Кроме того, с текущими инструментами вы не можете одновременно использовать снимки ОБА и ускорение GPU, вы должны выбрать (лично я предпочитаю ускорение GPU и медленный запуск эмулятора).
MAV
46

Попробуйте отключить антивирус. Может быть, это сделает эмулятор немного быстрее.

Федор
источник
7
Я также обнаружил, что это правда: я удалил AVG Free и установил MS Security Essentials, и эмулятор запускается заметно быстрее. YMMV.
Гай Старбак
4
это все еще очень медленно в системах Linux ... которые, очевидно, обычно не имеют av
alex.pilon
3
У меня нет антивируса. Все еще занимает много времени ..
Робин Мабен
Мой эмулятор настолько медленный на моем Linux без AV, что он просто открывает черное окно и зависает. Мой другой компьютер с Windows не поддерживает vt-x, поэтому он не работает.
Суичи Дога
Попробуйте перезагрузить компьютер, возможно, он сделает эмулятор немного быстрее.
vk.edward.li
44

Android SDK rev. 17 поддерживает ускорение виртуальных машин с использованием технологий виртуализации AMD и Intel.

Эта функция может значительно улучшить производительность эмулятора!

См. Следующий раздел в документации эмулятора Android для более подробной информации: Настройка ускорения виртуальной машины.

Не забудьте установить соответствующий драйвер для вашей операционной системы:

После того, как вы установили драйверы и загрузили образ системы Android X86 (как описано в документации), вы сможете создать новый AVD, используя образ x86:

Например:

  • Цель: образ системы Intel Atom x86 - уровень API 10
  • Процессор / ABI: Intel Atom (x86)
Миха
источник
К сожалению, в настоящее время AMD-V поддерживается только в Linux (SDK rev 17).
Амир Али Акбари
Intel HAXM сделал мой x86 AVD на 200% ~ 300% быстрее, чем раньше! Большой!
Lcsky
40

Эмулятор, кажется, замедляется при простое. Это становится очевидным благодаря быстрому наведению курсора на клавиши сбоку и наблюдению за реакцией на свет. В качестве обходного пути я перехожу -icount autoк QEMU при запуске эмулятора. Вы можете создать пакетный файл my_avd.batдля этого:

эмулятор @my_avd -no-boot-anim -qemu -icount auto
  • @my_avd - запустить виртуальное устройство с именем «my_avd»
  • -no-boot-anim - отключить анимацию для более быстрой загрузки
  • -qemu args... - передать аргументы qemu
  • -icount [N|auto] - включить виртуальный счетчик команд с 2 ^ N тактами на инструкцию

Это сделало анимацию маслянистой, плавной и ускорилась в adb installдесять раз.

Timothy003
источник
почему icount auto делает это быстрее?
Pacerier
благодарю вас. -no-boot-anim действительно загружает Android быстрее!
Ajay
Впечатляет .... В частности, я застрял с очень низкой скоростью передачи "adb". Теперь это действительно быстро, так же быстро, как образ x86. Спасибо
Мохсен Афшин
Я использую затмение. Знаете ли вы, как настроить эти параметры в моей среде?
КТА
1
@ MSS Понятия не имею ... Прошло много лет с тех пор, как я использовал эмулятор Android. Сожалею!
Timothy003
34

Вы можете ознакомиться с проблемами эмулятора в Google I / O 2011: доклад по инструментам разработки Android , начиная с 0:40:20.

Эмулятор работает медленно, потому что вся среда Android работает на эмулируемом оборудовании, а инструкции выполняются также на эмулируемом процессоре ARM.

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

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

Filip Dupanović
источник
30

Текущая (май 2011 г.) версия эмулятора работает медленно, особенно с Android 3.0 (Honeycomb), главным образом потому, что эмулятор не поддерживает аппаратный GL - это означает, что код GL переводится в программное обеспечение (фактически, программное обеспечение ARM), которое затем получает эмулируется в программном обеспечении в QEMU . Это безумно медленно. Они работают над этой проблемой и частично решили ее, но не с каким-либо качеством выпуска.

Посмотрите видео « Google I / O 2011: инструменты разработки Android», чтобы увидеть его в действии - перейдите к 44 минутам.

Peter Mortensen
источник
Означает ли это, что, если мы купим последнюю версию Raspberry Pi с процессором ARM, мы сможем использовать эмулятор Android ARM без замедления эмуляции ARM на x86 / x86_64? Достаточно ли хороши последние Raspberry Pi CPU и GPU для быстрого эмулятора? Предоставляет ли Google ARM-версию Android sdk-tools для использования эмулятора ARM?
Baptx
30

Используйте ускоритель Intel x86 Emulator

Сначала установите ускоритель эмулятора Intel x86 (HAXM). Это можно загрузить непосредственно с Intel или с помощью Android SDK Manager. В диспетчере SDK он находится в разделе «Дополнительно».

Скриншот менеджера SDK

В версии Android Studio, которую я использовал (0.8.9), Android SDK Manager загружает HAXM, но фактически не запускает установщик (я предполагаю, что это будет исправлено в более поздних выпусках). Чтобы запустить установщик, мне нужно было зайти в C: \ Program Files (x86) \ Android \ android-studio \ sdk \ extras \ intel \ Hardware_Accelerated_Execution_Manager и вручную запустить intelhaxm.exe.

HAXM работает с устройствами Intel, поэтому создал новый эмулятор с процессором Intel.

Создайте новый AVD, используя Intel Atom x86

Это значительно улучшило ситуацию, но эмулятор все еще чувствовал себя немного вялым. Последним этапом был выбор использования графического процессора хоста в Android Virtual Device Manager (AVD).

Скриншот AVD Create Options

После этих изменений Android Emulator запускался через 5-10 секунд и работал без каких-либо заметных задержек. Помните, что эти функции зависят от аппаратного обеспечения (CPU / GPU) и могут не работать в некоторых системах.

Амин Рахкан
источник
Использование Host GPU является ключом! спасибо было интересно, почему в одной машине у меня был быстрый эму, а в другой у меня не было
Keoz
Вы должны включить виртуализацию в BIOS, если у вас был процессор AMD, то включите Vt-x
Anu Martin
Обратите внимание, что этот HAXM необходим только (и доступен) для Windows, а не для Linux.
Süther
28

Новый вариант является Visual Studio Emulator для Android --Оно быстро, Hyper-V , x86, и загрузить бесплатно и без VS .

Джон Кемнетц
источник
Это только для Windows?
Роберт
Да - он использует Hyper-V, который есть только в Windows.
Джон Кемнец
Я согласен с претензией - лучший эмулятор на планете. Я являюсь свидетелем после нескольких лет использования других эмуляторов. Это намного лучше, чем другие, особенно когда дело доходит до отладки. Genymotion неплох, но требует VirtualBox, который конфликтует с Hyper-V. Этот ответ должен идти к вершине.
Hong
2
@JohnKemnetz я могу добавить только в Windows Professional или выше.
ухо
28

Попробуйте Genymotion для Android Studio. Пылающий быстро! Просто нужно один раз установить. Нет больше боли AVD.

Vipul J
источник
27

Чтобы добавить дополнительную информацию к этому.

Я недавно обновил свою установку Ubuntu до Ubuntu 10.04 LTS (Lucid Lynx), которая, в свою очередь, обновила мою версию Java до:

Java version "1.6.0_20"
Java(TM) SE Runtime Environment (build 1.6.0_20-b02)
Java HotSpot(TM) 64-Bit Server VM (build 16.3-b01, mixed mode)

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

Это может стоить людям, модернизирующим их JVM.

eggsy84
источник
64-битная Java быстрее (~ 2 раза), чем 32-битная Java на той же машине.
Мостовский Свернуть
15
Я не понимаю, почему скорость эмулятора должна зависеть от версии Java. Эмулятор не написан на Java и не работает на JVM.
Лена Шиммель
Я использую 64-битную Oracle Java 1.6.0_26, и мой эмулятор работает медленнее, чем черепаха ... это больно. Core2Quad, 64-битная Java + Ubuntu 11.10, 8 Гбайт памяти.
Джангофан
Если он не написан на Java и не работает на JVM, то почему он требует Java (а не какой-либо версии Java!)
Рольф
25

Вот что я заметил, никто не упомянул об этом вообще.

Назначьте все доступные процессоры на эмулятор

Вот что вы можете попробовать. Это ускоряет эмулятор для меня, особенно во время загрузки. Я заметил, что эмулятор использует только одно ядро ​​из доступных процессоров. Я настроил его на использование всех доступных процессоров.

Я использую Windows 7.

Когда эмулятор Android запускается, откройте диспетчер задач, откройте вкладку «Процесс», найдите «emulator-arm.exe» или «emulator-arm.exe * 32» ... Щелкните правой кнопкой мыши на нем, выберите «Сходство с процессором» и назначьте столько эмулятора, сколько захотите, эмулятору.

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

Харви Дарви
источник
3
Это ускорило процесс на моей машине с Windows 7
Rocco The Taco
Как это сделать на Windows 8?
Eng.Fouad
Я полагаю, вы могли бы использовать диспетчер задач Windows 8, чтобы сделать то же самое? Извините, у меня нет Windows 8 на данный момент.
Харви Дарви
2
В Windows 10, и я предполагаю, что Windows 8 также, вы должны перейти на Detailsвкладку в, Task Managerчтобы сделать это. Хотя в моем случае все 4 ядра уже были выбраны. Хотелось бы, чтобы они позволяли устройствам AMD запускать образы x86, даже без драйвера HAXM они должны быть быстрее, чем образы ARM.
А.Грандт
20

После некоторой разработки мой эмулятор стал очень медленным. Я выбрал стирание пользовательских данных , и это было намного лучше. Я предполагаю, что для загрузки каждого развернутого вами APK- файла требуется время .

Peter Mortensen
источник
20

Эмулятор Android очень медленно работает. Требуется 800 МБ памяти во время работы. Если вы используете Windows, вы можете использовать Microsoft Android Emulator. Это превосходно, предоставляет вам больше возможностей, чем Android Studio Emulator. И самое главное это быстро (потребляет только 13 МБ). Он поставляется с Visual Studio 2015 Technical Preview. Я использую это и доволен этим. Я скачал и установил весь пакет VS, мне нужно посмотреть, как мы можем установить только VS Emulator.

Эмулятор Visual Studio для Android

РЕДАКТИРОВАТЬ: попробовать https://www.visualstudio.com/vs/msft-android-emulator/

Anil8753
источник
как ты считаешь чувак? Это операционная система, и ей нужно много оперативной памяти. и 13 Мб Это действительно глупо, пожалуйста, смотрите снова.
MSS
@ MSS Я не знаю предысторию создания эмулятора VS, но я сделал это практически и нашел то, что сказал.
Anil8753
Может быть, вы ошиблись, я имею в виду, что невозможно эмулировать настоящую ОС Android в такой маленькой части оперативной памяти, а эмулятор VS должен быть простой средой отладки для приложений, созданных на C #, и, вероятно, не может запускать стандартное приложение для Android.
MSS
Да, я не уверен, что это настоящая полная эмуляция Android или просто легкая эмуляция основных функций Android. Пожалуйста, дайте ему попробовать. Сначала запустите этот эмулятор, а затем разверните приложение для Android-студии.
Anil8753
Я занимаюсь разработкой приложения для Android с использованием Android Studio и развертываю его аналогично другим устройствам ADB. Просто попробуйте
Anil8753
20

Ну, так как кто-то предложил Android x86 в качестве альтернативного эмулятора тестирования, я также представлю свой любимый. Это не может быть альтернативой для всех, но для меня это идеально!

Используйте проигрыватель Bluestacks . Он работает под управлением Android 2.3.4 и очень плавный и быстрый. Иногда это даже быстрее, чем обычное устройство. Единственным недостатком является то, что вы можете просто тестировать приложения на уровне API уровня 10 и только на одном размере экрана, но это идеально подходит только для тестирования, работает он или нет. Просто подключите плеер с adbпомощью

adb connect 127.0.0.1 

После компиляции он устанавливается мгновенно. Это очень впечатляет, учитывая, что у меня довольно среднее компьютерное оборудование (двухъядерный с 4 ГБ оперативной памяти).

Ахмад
источник
Это действительно очень быстро! Как я могу изменить его для таких требований, как 7 '(800x480) планшет? Я пытался изменить размер приложения, но это уже планшет.
nesimtunc
Я думаю, что вы имели в виду "текучий и быстрый" :) В любом случае, спасибо. Хороший совет, слишком плохо, что работает Android 2.2
Rolf
2
@ Рольф Да, ха-ха :) Но этот ответ старый. Вы должны проверить Genymotion. Это намного лучше.
Ахмад
19

У меня была периодическая медленная загрузка эмулятора (SDK v8.0), до трех минут на процессоре Intel Core i7 920 с частотой 2,67 ГГц, работающем на гостевой Xubuntu 10.04 VirtualBox 3.2.12 с загруженным Eclipse (3.6.1). Я изменил гостевую память VirtualBox с 1024 МБ до 2048 МБ, и с этого момента я никогда больше не испытывал медлительности (время загрузки соответствовало 33 секундам, загрузка процессора соответствовала 20%). И Eclipse, и эмулятор являются боровами памяти.

Stuart Rackham
источник
16

Я заметил, что мой эмулятор ( плагин Eclipse ) был значительно замедлен настройками сглаживания моей видеокарты Nvidia . Удаление 2x сглаживания из графического меню и изменение его на управляемое приложением сделало его более отзывчивым. Это все еще медленно, но лучше, чем раньше.

Peter Mortensen
источник
16

Чтобы сократить время запуска эмулятора, необходимо проверить «Отключить загрузочную анимацию» перед запуском эмулятора. Обратитесь к документации Android .

Если в случае, если вы не знаете, вам не нужно закрывать эмулятор каждый раз, когда вы запускаете / отлаживаете свое приложение. Если вы нажмете Run / Debug, когда он уже открыт, ваш APK-файл будет загружен в эмулятор и сразу же запустится. Эмулятор занимает досадно долгое время только при первом запуске.

Вот несколько советов по ускорению эмулятора Android: Как ускорить эмулятор Android до 400% .

Vinayak B
источник
15

Хороший способ ускорить тестирование Android-эмулятора и приложений - это установить или обновить Android Studio до версии Android Studio 2.0, а затем перейти в приложение, открыть «Настройки / Настройки», перейти к «Сборка», «Выполнение», «Развертывание» → «Мгновенный запуск». Нажмите Включить мгновенный запуск. И после этого это гарантирует, что у вас есть правильный плагин Gradle для вашего проекта для работы с Instant Run. введите описание изображения здесь

И Мгновенный запуск будет выглядеть так Новые действия Run & Stop в Android Studio для мгновенного запуска

Однако Android Studio сейчас в Preview, вы можете попробовать это сейчас.

Умар
источник
1
Android Studio 2.0 теперь стабильна. Мгновенный запуск увеличивает скорость сборки, а не скорость эмулятора, проверьте дополнительную информацию: < android-developers.blogspot.lt/2016/04/android-studio-2-0.html >
Арунас Беджинскас
Новый эмулятор работает примерно в 3 раза быстрее, чем предыдущий эмулятор Android. теперь вы можете передавать приложения и данные в 10 раз быстрее в эмулятор, чем на физическое устройство. android-developers.blogspot.ae
Umer
1
Помните, что при использовании Instant Run возникают некоторые проблемы при установке на устройствах <5.0. Если вы видите, что ваше приложение дает сбой на устройствах из kitkat и ниже, отключите мгновенный запуск и перестройте его. Вы должны быть хорошими, чтобы пойти ..
Вамси Чалла