Поделиться через


Как включить аппаратное ускорение с помощью эмуляторов Android (Hyper-V и AEHD)

С помощью Visual Studio вы можете легко протестировать и отладить приложение .NET MAUI для Android в эмуляторах для ситуаций, когда устройство Android недоступно. Однако если аппаратное ускорение недоступно или включено, эмулятор будет работать очень медленно. Вы можете значительно повысить производительность эмулятора, включив аппаратное ускорение и используя образы виртуальных устройств, подходящие для архитектуры процессора. Дополнительные сведения см. в разделе "Настройка аппаратного ускорения для эмулятора Android" на developer.android.com.

Эмулятор предоставляет универсальные сетевые возможности, которые можно использовать для различных целей, включая подключение к эмулятору, работающему на Компьютере Mac из виртуальной машины Windows. Дополнительные сведения см. в статье "Подключение к эмулятору Android на Mac" из виртуальной машины Windows.

В macOS эмулятор Android использует встроенный hypervisor.Framework. Дополнительные сведения см . в разделе "Гипервизор " на developer.apple.com.

Ускорение эмуляторов Android в Windows

Для ускорения эмулятора Android в Windows доступны следующие технологии виртуализации:

  • Платформа гипервизора Windows (WHPX). Hyper-V — это функция виртуализации в Windows, которая позволяет запускать виртуализированные компьютерные системы на физическом главном компьютере.
  • Драйвер гипервизора эмулятора Android (AEHD).

Примечание.

Диспетчер ускорения аппаратного ускорения intel (HAXM) не рекомендуется использовать из эмулятора 33.x.x.x.x. Он был заменен AEHD на процессорах Intel. Сведения об использовании HAXM в эмуляторе 32.x.x.x.x и более низкой версии см. в разделе "Настройка ускорения виртуальных машин с помощью Intel HAXM в Windows в developer.android.com".

Для лучшего использования в Windows рекомендуется использовать WHPX для ускорения эмулятора Android. Если WHPX недоступен на компьютере, можно использовать AEHD. Эмулятор Android автоматически использует аппаратное ускорение, если выполнены следующие критерии:

  • Аппаратное ускорение доступно и включено на компьютере разработчика.
  • Эмулятор выполняет системный образ, созданный для виртуального устройства на основе x86-64 или x86.

Внимание

Эмулятор ускорения виртуальной машины может выполняться на другой виртуальной машине, включая Microsoft Dev Box, при условии, что вложенная виртуализация включена в виртуальной машине.

Сведения о запуске и отладке с помощью эмулятора Android см. в статье Отладка в Android Emulator.

Ускорение с помощью Hyper-V

Перед включением Hyper-V прочтите следующий раздел, чтобы убедиться, что компьютер поддерживает Hyper-V.

Проверка поддержки Hyper-V

Hyper-V работает на платформе гипервизора Windows. Чтобы использовать эмулятор Android с Hyper-V, компьютер должен отвечать следующим условиям для поддержки платформы гипервизора Windows:

  • Оборудование компьютера должно соответствовать следующим требованиям:

    • Процессоры Intel с поддержкой технологии виртуализации (VT-x), расширенных таблиц страниц (EPT) и неограниченных гостевых функций (UG). VT-x должен быть включен в BIOS компьютера.
    • Процессоры AMD: рекомендуется процессор AMD Ryzen. Виртуализация или SVM должны быть включены в BIOS компьютера.
  • Компьютер должен работать под управлением корпоративных, pro или образовательных учреждений Windows 11 или Windows 10 версии 1909 или более поздней.

Чтобы убедиться, что компьютерное оборудование и программное обеспечение совместимо с Hyper-V, откройте командную строку и введите следующую команду:

systeminfo

Если все указанные требования Hyper-V имеют значение Да, компьютер поддерживает Hyper-V. Например:

Пример выходных данных systeminfo при проверке поддержки Hyper-V для .NET MAUI.

Если результат Hyper-V указывает, что гипервизор запущен в настоящее время, Hyper-V уже включен.

Внимание

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

Включение ускорения Hyper-V в Windows

Если ваш компьютер соответствует приведенным выше критериям, выполните следующие действия для ускорения эмулятора Android с помощью Hyper-V.

  1. Введите компоненты windows в поле поиска Windows и выберите Включение и отключение компонентов Windows в результатах поиска. В диалоговом окне Компоненты Windows включите Hyper-V и платформу гипервизора Windows:

    Включение платформы Hyper-V и Гипервизора Windows для .NET MAUI.

    После внесения этих изменений перезагрузите компьютер.

    Внимание

    В Windows 10 с обновлением за октябрь 2018 г. (RS5) и более поздних версий необходимо только включить Hyper-V, так как он будет автоматически использовать платформу гипервизора Windows (WHPX).

  2. Убедитесь, что виртуальное устройство, созданное в диспетчер устройств Android, — это образ системы на основе x86-64 или x86. Если вы используете образ системы на основе Arm, виртуальное устройство не будет ускорено и будет работать медленно.

После включения Hyper-V вы сможете запустить ускоренный эмулятор Android.

Ускорение с помощью AEHD

Если компьютер не поддерживает Hyper-V, необходимо использовать AEHD для ускорения эмулятора Android. Прежде чем установить и использовать AEHD, ознакомьтесь со следующим разделом, чтобы убедиться, что компьютер поддерживает AEHD.

Проверка поддержки AEHD

Компьютер должен соответствовать следующим критериям для поддержки AEHD:

  • Процессор Intel или AMD с расширением виртуализации, который должен быть включен в BIOS.
  • 64-разрядная версия Windows 11 или Windows 10.
  • Hyper-V необходимо отключить.

Примечание.

Несколько функций в Windows позволяют Hyper-V неявно. Дополнительные сведения см. в статье Двойной проверки при отключении Hyper-V на developer.android.com.

Включение ускорения AEHD в Windows

Если компьютер соответствует приведенным выше критериям, выполните следующие действия, чтобы ускорить эмулятор Android с помощью AEHD:

  1. В Visual Studio выберите пункт меню "Сервис > Android SDK Manager" для Android>.

  2. В окне пакетов SDK и инструментов Android перейдите на вкладку "Сервис".

  3. На вкладке "Сервис" разверните флажок "Дополнительные" для элемента "Драйвер гипервизора эмулятора Android" (установщик), а затем нажмите кнопку "Применить изменения":

    Установка AEHD с помощью диспетчера пакетов SDK для Android в Visual Studio.

    Примечание.

    Кроме того, AEHD можно скачать и установить с GitHub. После распаковки пакета драйвера запустите silent_install.bat командную строку с правами администратора.

  4. Убедитесь, что виртуальное устройство, созданное в диспетчер устройств Android, — это образ системы на основе x86-64 или x86. Если вы используете образ системы на основе Arm, виртуальное устройство не будет ускорено и будет работать медленно.

AEHD 2.1 и выше

После установки убедитесь, что драйвер работает правильно с помощью следующей команды:

sc query aehd

Если драйвер работает правильно, сообщение о состоянии будет содержать следующие сведения:

SERVICE_NAME: aehd
       ...
       STATE              : 4  RUNNING
       ...

Следующее сообщение об ошибке означает, что расширение виртуализации не включено в BIOS или что Hyper-V не отключен:

SERVICE_NAME: aehd
       ...
       STATE              : 1  STOPPED
       WIN32_EXIT_CODE    : 4294967201 (0xffffffa1)
       ...

После установки и запуска AEHD вы сможете запустить ускоренный эмулятор Android.

AEHD 2.0 и ниже

После установки убедитесь, что драйвер работает правильно с помощью следующей команды:

sc query gvm

Если драйвер работает правильно, сообщение о состоянии будет содержать следующие сведения:

SERVICE_NAME: gvm
       ...
       STATE              : 4  RUNNING
       ...

Следующее сообщение об ошибке означает, что расширение виртуализации не включено в BIOS или что Hyper-V не отключен:

SERVICE_NAME: gvm
       ...
       STATE              : 1  STOPPED
       WIN32_EXIT_CODE    : 4294967201 (0xffffffa1)
       ...

После установки и запуска AEHD вы сможете запустить ускоренный эмулятор Android.

Удаление AEHD

Чтобы удалить AEHD, используйте следующие команды в командной строке с правами администратора:

  • AEHD 2.1 и выше

    sc stop aehd
    sc delete aehd
    
  • AEHD 2.0 и ниже

    sc stop gvm
    sc delete gvm
    

Внимание

Завершите работу всех эмуляторов x86 перед удалением AEHD для AMD.

Устранение неполадок

Сведения о решении проблем с аппаратным ускорением см. в руководстве по устранению неполадок для эмулятора Android.