Udostępnij za pośrednictwem


Jak włączyć przyspieszanie sprzętowe za pomocą emulatorów systemu Android (Hyper-V i AEHD)

Za pomocą programu Visual Studio możesz łatwo przetestować i debugować aplikację .NET MAUI dla systemu Android w emulatorach w sytuacjach, w których urządzenie z systemem Android nie jest dostępne. Jeśli jednak przyspieszanie sprzętowe nie jest dostępne lub włączone, emulator będzie działać bardzo wolno. Możesz znacznie poprawić wydajność emulatora, włączając przyspieszanie sprzętowe i przy użyciu obrazów urządzeń wirtualnych, które są odpowiednie dla architektury procesora. Aby uzyskać więcej informacji, zobacz Konfigurowanie przyspieszania sprzętowego dla emulatora systemu Android w developer.android.com.

Emulator zapewnia uniwersalne możliwości sieciowe, które mogą być używane w różnych celach, w tym nawiązywanie połączenia z emulatorem uruchomionym na komputerze Mac z poziomu maszyny wirtualnej z systemem Windows. Aby uzyskać więcej informacji, zobacz Connect to an Android emulator on a Mac from a Windows virtual machine (Nawiązywanie połączenia z emulatorem systemu Android na komputerze Mac z maszyny wirtualnej z systemem Windows).

W systemie macOS emulator systemu Android używa wbudowanej funkcji Hypervisor.Framework. Aby uzyskać więcej informacji, zobacz Hypervisor on developer.apple.com (Funkcja Hypervisor w developer.apple.com).

Przyspieszanie emulatorów systemu Android w systemie Windows

Dostępne są następujące technologie wirtualizacji umożliwiające przyspieszenie emulatora systemu Android w systemie Windows:

  • Platforma funkcji Hypervisor systemu Windows (WHPX). Funkcja Hyper-V to funkcja wirtualizacji systemu Windows, która umożliwia uruchamianie zwirtualizowanych systemów komputerowych na komputerze hosta fizycznego.
  • Sterownik funkcji hypervisor emulatora systemu Android (AEHD).

Uwaga

Program Intel Hardware Accelerated Execution Manager (HAXM) jest przestarzały z emulatora 33.x.x.x.x i został zastąpiony przez dysk AEHD na procesorach Intel. Aby uzyskać informacje na temat korzystania z funkcji HAXM w emulatorze 32.x.x.x.x i niższych, zobacz Konfigurowanie przyspieszania maszyn wirtualnych przy użyciu funkcji Intel HAXM w systemie Windows w developer.android.com.

Aby uzyskać najlepsze środowisko w systemie Windows, zaleca się użycie WHPX w celu przyspieszenia emulatora systemu Android. Jeśli WHPX nie jest dostępny na komputerze, można użyć dysku AEHD. Emulator systemu Android automatycznie używa przyspieszania sprzętowego, jeśli spełnione są następujące kryteria:

  • Przyspieszanie sprzętowe jest dostępne i włączone na komputerze dewelopera.
  • Emulator uruchamia obraz systemu utworzony dla urządzenia wirtualnego opartego na architekturze x86-64 lub x86.

Ważne

Przyspieszony emulator maszyny wirtualnej może działać wewnątrz innej maszyny wirtualnej, w tym usługi Microsoft Dev Box, pod warunkiem że wirtualizacja zagnieżdżona jest włączona na maszynie wirtualnej.

Aby uzyskać informacje na temat uruchamiania i debugowania za pomocą emulatora systemu Android, zobacz Debugowanie w emulatorze systemu Android.

Przyspieszanie za pomocą funkcji Hyper-V

Przed włączeniem funkcji Hyper-V przeczytaj poniższą sekcję, aby sprawdzić, czy komputer obsługuje funkcję Hyper-V.

Weryfikowanie obsługi funkcji Hyper-V

Funkcja Hyper-V działa na platformie funkcji Hypervisor systemu Windows. Aby korzystać z emulatora systemu Android z funkcją Hyper-V, komputer musi spełniać następujące kryteria, aby obsługiwać platformę funkcji Hypervisor systemu Windows:

  • Sprzęt komputera musi spełniać następujące wymagania:

    • Procesory Intel z obsługą technologii wirtualizacji (VT-x), rozszerzone tabele stron (EPT) i nieograniczone funkcje gościa (UG). VT-x musi być włączona w systemie BIOS komputera.
    • Procesory AMD: zalecany procesor AMD Ryzen. Wirtualizacja lub maszyna wektorów nośnych musi być włączona w systemie BIOS komputera.
  • Na komputerze musi być uruchomiona wersja Enterprise, Pro lub Education systemu Windows 11 lub Windows 10 w wersji 1909 lub nowszej.

Aby sprawdzić, czy sprzęt i oprogramowanie komputera są zgodne z funkcją Hyper-V, otwórz wiersz polecenia i wpisz następujące polecenie:

systeminfo

Jeśli wszystkie wymienione wymagania funkcji Hyper-V mają wartość Tak, komputer może obsługiwać funkcję Hyper-V. Na przykład:

Przykład danych wyjściowych informacji systemowych podczas sprawdzania obsługi funkcji Hyper-V dla interfejsu MAUI platformy .NET.

Jeśli wynik funkcji Hyper-V wskazuje, że funkcja hypervisor jest obecnie uruchomiona, funkcja Hyper-V jest już włączona.

Ważne

Jeśli system Windows działa wewnątrz maszyny wirtualnej, zagnieżdżona wirtualizacja musi być włączona w funkcji hypervisor hosta.

Włączanie przyspieszania funkcji Hyper-V w systemie Windows

Jeśli komputer spełnia powyższe kryteria, wykonaj następujące kroki, aby przyspieszyć emulator systemu Android za pomocą funkcji Hyper-V:

  1. Wprowadź funkcje systemu Windows w polu wyszukiwania systemu Windows i wybierz pozycję Włącz lub wyłącz funkcje systemu Windows w wynikach wyszukiwania. W oknie dialogowym Funkcje systemu Windows włącz zarówno funkcję Hyper-V, jak i platformę funkcji Hypervisor systemu Windows:

    Włączanie funkcji Hyper-V i platformy funkcji Hypervisor systemu Windows dla platformy .NET MAUI.

    Po wprowadzeniu tych zmian uruchom ponownie komputer.

    Ważne

    W Aktualizacja systemu Windows 10 z października 2018 (RS5) i nowszych wystarczy włączyć funkcję Hyper-V, ponieważ będzie automatycznie używać platformy Funkcji Hypervisor systemu Windows (WHPX).

  2. Upewnij się, że urządzenie wirtualne utworzone w systemie Android Menedżer urządzeń jest obrazem systemu opartym na architekturze x86-64 lub x86. Jeśli używasz obrazu systemu opartego na usłudze Arm, urządzenie wirtualne nie zostanie przyspieszone i będzie działać wolno.

Po włączeniu funkcji Hyper-V będzie można uruchomić przyspieszony emulator systemu Android.

Przyspieszanie za pomocą dysku AEHD

Jeśli komputer nie obsługuje funkcji Hyper-V, należy użyć dysku AEHD, aby przyspieszyć emulator systemu Android. Przed zainstalowaniem i użyciem dysku AEHD przeczytaj poniższą sekcję, aby sprawdzić, czy komputer obsługuje dysk AEHD.

Weryfikowanie obsługi dysku AEHD

Komputer musi spełniać następujące kryteria, aby obsługiwać dysk AEHD:

  • Procesor Intel lub AMD z rozszerzeniem wirtualizacji, który musi być włączony w systemie BIOS.
  • 64-bitowy system Windows 11 lub Windows 10.
  • Funkcja Hyper-V musi być wyłączona.

Uwaga

Kilka funkcji w systemie Windows umożliwia niejawne włączenie funkcji Hyper-V. Aby uzyskać więcej informacji, zobacz Podwójne sprawdzanie podczas wyłączania funkcji Hyper-V w developer.android.com.

Włączanie przyspieszania dysku AEHD w systemie Windows

Jeśli komputer spełnia powyższe kryteria, wykonaj następujące kroki, aby przyspieszyć emulator systemu Android za pomocą dysku AEHD:

  1. W programie Visual Studio wybierz element menu Narzędzia > Android SDK Manager... dla systemu Android>.

  2. W oknie Zestawy SDK i narzędzia systemu Android wybierz kartę Narzędzia.

  3. Na karcie Narzędzia rozwiń węzeł Dodatki, zaznacz pole wyboru dla elementu Sterownik funkcji Hypervisor emulatora systemu Android (instalator), a następnie wybierz przycisk Zastosuj zmiany:

    Instalowanie dysku AEHD za pośrednictwem menedżera zestawu SDK systemu Android w programie Visual Studio.

    Uwaga

    Alternatywnie można pobrać i zainstalować dysk AEHD z usługi GitHub. Po rozpakowaniu pakietu sterowników uruchom polecenie silent_install.bat w wierszu polecenia z uprawnieniami administratora.

  4. Upewnij się, że urządzenie wirtualne utworzone w systemie Android Menedżer urządzeń jest obrazem systemu opartym na architekturze x86-64 lub x86. Jeśli używasz obrazu systemu opartego na usłudze Arm, urządzenie wirtualne nie zostanie przyspieszone i będzie działać wolno.

Dysk AEHD 2.1 lub nowszy

Po zakończeniu instalacji upewnij się, że sterownik działa poprawnie, używając następującego polecenia:

sc query aehd

Jeśli sterownik działa poprawnie, komunikat o stanie będzie zawierać następujące informacje:

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

Następujący komunikat o błędzie oznacza, że rozszerzenie wirtualizacji nie jest włączone w systemie BIOS lub że funkcja Hyper-V nie jest wyłączona:

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

Po zainstalowaniu i uruchomieniu dysku AEHD będzie można uruchomić przyspieszony emulator systemu Android.

AEHD 2.0 i niższe

Po zakończeniu instalacji upewnij się, że sterownik działa poprawnie, używając następującego polecenia:

sc query gvm

Jeśli sterownik działa poprawnie, komunikat o stanie będzie zawierać następujące informacje:

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

Następujący komunikat o błędzie oznacza, że rozszerzenie wirtualizacji nie jest włączone w systemie BIOS lub że funkcja Hyper-V nie jest wyłączona:

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

Po zainstalowaniu i uruchomieniu dysku AEHD będzie można uruchomić przyspieszony emulator systemu Android.

Odinstalowywanie dysku AEHD

Aby odinstalować dysk AEHD, użyj następujących poleceń w wierszu polecenia z uprawnieniami administratora:

  • Dysk AEHD 2.1 lub nowszy

    sc stop aehd
    sc delete aehd
    
  • AEHD 2.0 i niższe

    sc stop gvm
    sc delete gvm
    

Ważne

Zamknij wszystkie emulatory x86 przed odinstalowaniem dysku AEHD dla firmy AMD.

Rozwiązywanie problemów

Aby uzyskać pomoc dotyczącą rozwiązywania problemów z przyspieszaniem sprzętowym, zobacz Przewodnik rozwiązywania problemów z emulatorem systemu Android.