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




эмулятор андроид зависает (24)

Более старые версии Android работают намного быстрее. Когда я нахожусь на своем нетбуке, я использую Android 1.5 (API уровня 3). Однако есть несколько недостатков - ваши приложения должны поддерживать старые платформы (очевидно), а ndk-gdb требует запуска Android 2.2 (API 8) или выше. Но регулярное тестирование приложений на старых платформах - это хорошая идея.

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

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

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


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

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

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


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

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

EDIT: попробуйте https://www.visualstudio.com/vs/msft-android-emulator/


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

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

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

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

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

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

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

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

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

Например:

  • Цель: системный образ Intel Atom x86 - уровень API 10
  • CPU / ABI: Intel Atom (x86)

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

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


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

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

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

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

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


Обновить

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

Нажмите кнопку «Редактирование эмулятора», затем нажмите « Показать дополнительные настройки» . Затем включите Quick Boot как Quick Boot ниже.

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

Также я увеличил Device RAM Size до 1024 что приводит к очень быстрому эмулятору.

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

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

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

И для ускорения вашего эмулятора вы можете обратиться к Ускорить свой эмулятор Android! :


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


Кажется, что эмулятор замедляется при простоях. Это становится очевидным благодаря быстрой затиранию над клавишами на стороне и наблюдению за ответами на освещение. Как обходной путь, я -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 десять раз.


ВАЖНОЕ ПРИМЕЧАНИЕ . Пожалуйста, сначала обратитесь к списку 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,

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

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


Я заметил, что эмулятор запускается намного быстрее, если нет подключенного сервера мониторинга Dalvik Debug (DDMS). Поэтому, если вы запустите эмулятор из Virtual Device Manager «SDK Setup.exe», а Eclipse не запущен, эмулятор работает быстрее.

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


Попробуйте 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, найдите устройство и наслаждайтесь!

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




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

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

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

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

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


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


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

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

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

emulator -avd <avd_name> -gpu on

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


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

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

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

И начните:

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

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

HAX работает, и эмулятор работает в режиме быстрого virt

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

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

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

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

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

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

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


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

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

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

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


У меня было время прерывистого медленного эмулятора (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, и эмулятор - это свиньи памяти.


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

  1. Genymotion

  2. VirtualBox

  3. BlueStacks

  4. YouWave

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

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

  7. Andy

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







qemu