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:
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:
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:
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).
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:
W programie Visual Studio wybierz element menu Narzędzia > Android SDK Manager... dla systemu Android>.
W oknie Zestawy SDK i narzędzia systemu Android wybierz kartę Narzędzia.
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:
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.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.