Как исправить: "HAX не работает, и эмулятор работает в режиме эмуляции"

вопрос

Я получаю "HAX не работает, и эмулятор работает в режиме эмуляции", это связано с установкой Intel x86 Emulator Accelerator (HAXM) и запуском avd с процессором, установленным на CPU Intel Atom (x86)? И хотя кажется, что AVD работает быстрее после установки HAXM, это сообщение указывает на то, что производительность AVD затруднена. Следует ли это исправить, и если да, то как?

Я работаю на mac os x 10.9.1.

листинг что установлено в моей системе через Android sdk manager:

  • инструменты
    • Android SDK Tools Rev 22.3
    • Android SDK платформа-инструменты rev 19.0.1
    • Android SDK Build-tools Rev 19.0.1
    • Android SDK Build-tools Rev 19

==

  • Android 4.4.2 (API 19)
    • платформа SDK
    • система eabi v7a рукоятки Изображение
    • образ системы Intel x86 Ato
    • Google APIs
    • источники для Android SDK

==

  • дополнительно
    • Intel x86 Emulator Accelerator (HAXM), и я также запускаю установщик dmg, а также установил исправление после того, как узнал об этом.

настройка AVD

    4.4.2
  • уровень API 19
  • процессор Intel Atom (x86)

после запуска avd:

(ruby-2.0.0-p353) .android   $ tools/emulator -avd 1AVD -wipe-data -no-boot-anim -cpu-delay 0

Я получаю следующее, и эмулятор в конечном итоге загружается

emulator: The memory needed by this VM exceeds the driver limit.

HAX is not working and emulator runs in emulation mode

17 ответов


Да, это должно быть исправлено, HAXM не работает. Сколько ОЗУ установлено для использования в вашей конфигурации AVD ?

768M-хорошее число для него, но самое главное, что это число должно быть ниже или равно использованию памяти, которое вы установили во время установки HAXM. Вы можете запустить его установку снова, чтобы изменить его.


Если вы находитесь на Mac, вы можете установить haxm С помощью доморощенного via бочковой который является встроенным расширением (по состоянию на 2015 год), который позволяет устанавливать не открытые исходные и настольные приложения (например, chrome, firefox, eclipse и т. д.):

brew cask install intel-haxm 

способ, которым я решил это, установив предел памяти AVD и память HAXM равным размером, который составляет 1 ГБ = 1024 МБ. AVD не может иметь более высокий предел памяти, чем HAXM.

1. Установка памяти HAXM на 1024 м

единственный способ изменить память HAXM-установить ее снова. Я сделал это с помощью терминала. Найдите Hardware_Accelerated_Execution_Manager в вашей машине. Затем измените каталог, чтобы запустить сценарий установки.

cd ~/Library/Android/sdk/extras/intel/Hardware_Accelerated_Execution_Manager

-OR-

cd ~/Library/Developer/Xamarin/android-sdk-macosx/extras/intel/Hardware_Accelerated_Execution_Manager

может потребоваться изменить разрешения:

sudo chmod 755 "HAXM installation"

затем:

./HAXM\ installation -m 1024

-OR-

sudo ./"HAXM installation" -m 1024

2. Установка виртуального устройства того же размера с HAXM memory limit

enter image description here

это работает для меня. Удачи!


установите последнюю версию HAXM от intel: https://software.intel.com/en-us/android/articles/intel-hardware-accelerated-execution-manager

после этого он работает


Для Windows.

на Android Studio:

инструменты>Android>менеджер AVD>Устройство>Иконка Карандашом>Показать Дополнительные Настройки>память и хранение>RAM > установите ОЗУ на нужный размер.

на Control Panel:

программы и компоненты>Аппаратное Ускорение Intel Execution Manager>изменить>установить вручную > установите ОЗУ на нужный размер.

лучше, чтобы размеры ОЗУ, установленные в обоих местах, были одинаковыми.


Проверьте последнюю версию Has на веб-сайте Intel и установите ее. Пусть ОЗУ в рекомендуемом размере "preset 2048", а затем попробуйте запустить приложение. Все должно работать нормально.


Да, это должно быть исправлено, HAXM не работает.

HAXM иногда работает; опыт работы с HAXM в настоящее время спорадический на разных платформах.

например, у меня есть конец 2009 iMac работает 10.8.5 и i7 процессор @2.8 Ghz, Android SDK 22.6 со всеми лакомствами, обновленными сегодня утром (03/05/14). API17 построит эмуляторы с ускорением HAXM на этой машине iMac, api19 задохнется.

У меня также есть ранний 2013 MBP 15 " Retina работает 10.8.5 и процессор i7 @2.7 Ghz, Android SDK 22.6 со всеми вкусностями, обновленными сегодня утром (03/05/14). API17 будет строить эмуляторы с ускорением HAXM, API19 тоже отлично работает.

то же самое для моего (личного) конца 2013 MBP Retina 13" с двухъядерным i5 и Mavericks.

что-то происходит для виртуализации на уровне чипов, отсутствующих в старых процессорах (даже i7), которые нужны новым образам API19 x86 для работы HAXM. Если API19 не работает, дайте API17 или даже 16 a пытаться.


на вашем mac откройте finder тогда Ctr + Alt + G после этого /Users/${yourMacNameHere}/Library/Android/sdk/extras/intel/Hardware_Accelerated_Execution_Manager

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


Если вы используете процессор Intel, убедитесь, что установщик HAXM (Intel® Hardware Accelerated Execution Manager) установлен через SDK Manager, установив этот параметр в диспетчере SDK. а затем запустите установщик HAXM ext по пути ниже

your_sdk_folder\extras\intel\Hardware_Accelerated_Execution_Manager\intelhaxm.exe

также проверьте размер ОЗУ, выделенный при установке HAX, чтобы он соответствовал размеру ОЗУ вашего эмулятора.

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

этой видео также поможет вам, если вы столкнулись с проблемой после установки HAXM.


либо увеличьте размер ОЗУ, выделенный при установке HAX, чтобы соответствовать точно или немного больше места, чем размер ОЗУ эмулятора, который вы хотите запустить в режиме " Intel x86 Emulator Accelerator (HAXM)",

Как только вы преуспеете в этом, теперь вы можете просмотреть это в консоли / log

enter image description here


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

вы можете увидеть по-французски здесь:http://blerow.blogspot.fr/2015/01/android-studio.html


решение геккоба работает отлично. Внимание: HAXM, который вы предоставляете, используется на всех работающих устройствах. Поэтому, если вы тестируете на телефоне и планшете одновременно, и у каждого есть требование 1G. Затем убедитесь, что ваш HAXM выделен по крайней мере 2G.


в моем случае эта ошибка была исправлена, когда я установил память HAXM равной памяти AVD. HAXM память 1024 МБ = AVD память 1024 МБ

Hax is enabled
Hax ram_size 0x40000000
HAX is working and emulator runs in fast virt mode.

до этого момента ошибка должна быть исправлена.

теперь я перечисляю свою конкретную среду, если это может помочь кому-то, кто использует OS X.

OS X EI Capitan 10.11.4

MacBook (13 дюймов), 2 ГГц Intel Core 2 Duo, 4 ГБ оперативной памяти.

Android Studio 2.1

зефир (23) x86 не прошел мигающий экран значков android даже часов.

Lollipop (22) x86 прошел мигающий экран значков android, а затем показал

  • запуск Android (оптимизация x из y приложений)
  • запуск Android (запуск приложений)
  • Запуск Android (Обновление Базы Данных Контактов)
  • запуск Android (завершение загрузки) и застрял здесь часы.

KitKat (19) x86 работал успешно и я мог бы установить hello world там.


скачать HAXM из SDK Manager

Откройте Диспетчер SDK из Android Studio, щелкните значок, показанный на снимке экрана.

enter image description here

нажмите "запустить автономный SDK Manager" в диалоговом окне "настройки по умолчанию".

enter image description here

проверить узел "дополнительно > Intel x86 Emulator Accelerator (HAXM installer)" и продолжить работу с HAXM скачать.

enter image description here

установка или изменение HAXM

теперь вы можете получить доступ с установкой (или изменением существующего installtino) HAXM, обратившись к местоположению загрузки. Введите этот путь в "run"

%localappdata%\Android\sdk\extras\intel\Hardware_Accelerated_Execution_Manager

и дважды щелкните файл " intelhaxm-android.EXE-файл"

вы можете увеличить размер памяти, выделенной HAXM при изменении существующей установки HAXM. У меня есть машина с 32 ГБ ОЗУ и я хотел бы запустить несколько AVDs одновременно (для автоматического тестирования и т. д.) поэтому я выделил 8 ГБ для HAXM.

предостережение

Если вы используете один AVD одного 1 ГБ и выделили 2 ГБ для HAXM, вы не можете запустить другой AVD с ОЗУ более 1 ГБ. Пожалуйста, убедитесь, что Android монитор устройства не работает при изменении или установке Либо (чтобы избежать сюрпризов).

enter image description here

эти шаги протестированы на платформе Windows, но, как правило, могут быть применены и к другим платформам с небольшими изменениями.


моя проблема заключалась в том, что я больше не мог запускать эмулятор, который работал, потому что я вышел из приложения эмулятора, но процесс не был полностью завершен, поэтому я пытался запустить другой эмулятор, пока предыдущий все еще работал. На Mac, я должен был использовать монитор активности, чтобы увидеть другой процесс и убить его. Шаги:

  1. открыть Монитор активности (в утилит или с помощью команд+пробел)
  2. найти имя процесса, в моем случае, qemu-система...
  3. выберите процесс.
  4. принудительно завершить процесс с помощью кнопки " x " в левом верхнем углу.
  5. мне не нужно было использовать "Force Quit", просто "Quit", но вы можете использовать либо.

повторно откройте конфигурацию устройства AVD. путем редактирования устройства в AVD manager. перейдите к выбору версии AVD Android. На правой панели a рекомендация отображается следуйте этой рекомендации, и все будет исправлено.


память по умолчанию, назначенная HAX, составляет 1024 МБ. И эмулятор имеет 1536MB, по-видимому, для Nexus 5x api 25.

Если вы используете Android Studio,

  • просто перейдите в сервис - > AVD manager.
  • затем выберите эмулятор и нажмите на кнопке карандаша справа для редактирования.
  • перейти к дополнительным настройкам в новое окно и измените значение ОЗУ на 1024

работает как шарм. :)

screenshot of android studio