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


Answers

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

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

HAXM означает «Intel Hardware Accelerated Execution Manager»

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

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

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

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

  2. Обновите свои Android-инструменты: после каждого обновления подключаемого модуля Eclipse важно обновить свои Android SDK Tools. Для этого запустите 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 (технология виртуализации) .

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

  • Или что касается нового SDK,
Question

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

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

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




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

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

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

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



I noticed that the my emulator ( Eclipse plugin) was significantly slowed by my Nvidia graphics card anti-aliasing settings. Removing 2x anti aliasing from the graphics menu and changing it to application controlled made it more responsive. It is still slow, but better than it used to be.




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

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

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

Этот эмулятор работает быстро и быстро.

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




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

  1. Genymotion

  2. VirtualBox

  3. BlueStacks

  4. YouWave

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

  6. Кувшин фасоли

  7. Andy

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




В эмуляторе эмулятора Android 9 есть новая функция «моментального снимка». Вы можете сохранить состояние эмулятора (создать изображение эмулятора) и избежать загрузки при запуске эмулятора.




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




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

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

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

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

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




I had intermittent slow emulator (SDK v8.0) load times, up to three minutes on Intel Core i7 920 2.67 GHz CPU running on Xubuntu 10.04 VirtualBox 3.2.12 guest with Eclipse (3.6.1) loaded. I changed the VirtualBox guest memory from 1024 MB to 2048 MB and from that point on, I never experienced the slowness again (load times consistent at 33 seconds, CPU load consistent at 20%). Both Eclipse and the emulator are memory hogs.




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




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

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




The older Android versions run a lot faster. When I'm on my netbook, I use Android 1.5 (API level 3). There are a couple of drawbacks, though--your apps need to support the older platforms (obviously), and ndk-gdb requires running Android 2.2 (API level 8) or higher. But regularly testing apps against older platforms is a good idea anyway.




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

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

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




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

Недавно я обновил мою установку 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.




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




Links