Come abilitare l'accelerazione hardware con emulatori Android (Hyper-V e AEHD)

Con Visual Studio è possibile testare ed eseguire facilmente il debug dell'app MAUI .NET per Android nelle situazioni in cui un dispositivo Android non è disponibile. Tuttavia, se l'accelerazione hardware non è disponibile o abilitata, l'emulatore verrà eseguito molto lentamente. È possibile migliorare significativamente le prestazioni dell'emulatore abilitando l'accelerazione hardware e usando immagini del dispositivo virtuale appropriate per l'architettura del processore. Per altre informazioni, vedere Configurare l'accelerazione hardware per l'emulatore Android in developer.android.com.

L'emulatore offre funzionalità di rete versatili che possono essere usate per scopi diversi, inclusa la connessione a un emulatore in esecuzione in un Mac dall'interno di una macchina virtuale Windows. Per altre informazioni, vedere Connessione a un emulatore Android in un Mac dall'interno di una macchina virtuale Windows.

Accelerare gli emulatori Android in Windows

Le tecnologie di virtualizzazione seguenti sono disponibili per l'accelerazione dell'emulatore Android:

  • Piattaforma Windows Hypervisor (WHPX). Hyper-V è una funzionalità di virtualizzazione di Windows che consente l'esecuzione di sistemi di computer virtualizzati in un computer host fisico.
  • Driver dell'hypervisor dell'emulatore Android (AEHD).

Nota

Intel Hardware Accelerated Execution Manager (HAXM) è deprecato dall'emulatore 33.x.x.x ed è stato sostituito da AEHD nei processori Intel. Per informazioni sull'uso di HAXM nell'emulatore 32.x.x.x e versioni precedenti, vedere Configurare l'accelerazione delle macchine virtuali con Intel HAXM in Windows in developer.android.com.

Per un'esperienza ottimale in Windows, è consigliabile usare WHPX per accelerare l'emulatore Android. Se WHPX non è disponibile nel computer, è possibile usare AEHD. L'emulatore Android usa automaticamente l'accelerazione hardware se vengono soddisfatti i criteri seguenti:

  • L'accelerazione hardware è disponibile e abilitata nel computer di sviluppo.
  • L'emulatore esegue un'immagine di sistema creata per un dispositivo virtuale basato su x86 o x86.

Importante

Un emulatore accelerato di macchina virtuale (VM) può essere eseguito all'interno di un'altra macchina virtuale, incluso Microsoft Dev Box, a condizione che la virtualizzazione annidata sia abilitata nella macchina virtuale.

Per informazioni sull'avvio e sul debug con l'emulatore Android, vedere Debug nell'emulatore Android.

Accelerare con Hyper-V

Prima di abilitare Hyper-V, leggere la sezione seguente per verificare che il computer supporti Hyper-V.

Verificare il supporto per Hyper-V

Hyper-V viene eseguito nella piattaforma Windows Hypervisor. Per usare l'emulatore Android con Hyper-V, il computer deve soddisfare i criteri seguenti per supportare la piattaforma Windows Hypervisor:

  • L'hardware del computer deve soddisfare i requisiti seguenti:

    • CPU Intel o AMD Ryzen a 64 bit con Second Level Address Translation (SLAT).
    • Supporto della CPU per estensioni modalità di monitoraggio macchina virtuale (VT-c nelle CPU Intel).
    • Almeno 4 GB di memoria.
  • Nel BIOS del computer è necessario abilitare gli elementi seguenti:

    • Tecnologia di virtualizzazione (potrebbe avere un'etichetta diversa a seconda del produttore della scheda madre).
    • Protezione esecuzione programmi basata su hardware.
  • Il computer deve eseguire le versioni Enterprise, Pro o Education di Windows 11 o Windows 10 versione 1909 o successiva.

Per verificare che l'hardware e il software del computer siano compatibili con Hyper-V, aprire un prompt dei comandi e digitare il comando seguente:

systeminfo

Se tutti i requisiti di Hyper-V elencati hanno un valore Yes, i computer possono supportare Hyper-V. Ad esempio:

Example of systeminfo output when checking Hyper-V support for .NET MAUI.

Se il risultato di Hyper-V indica che un hypervisor è attualmente in esecuzione, Hyper-V è già abilitato.

Importante

Se Windows è in esecuzione all'interno di una macchina virtuale, la virtualizzazione annidata deve essere abilitata nell'hypervisor host.

Abilitare l'accelerazione Hyper-V in Windows

Se il computer soddisfa i criteri sopra riportati, seguire questa procedura per accelerare l'emulatore Android con Hyper-v:

  1. Immettere funzionalità di windows nella casella di ricerca Windows e selezionare Attivazione o disattivazione delle funzionalità Windows nei risultati della ricerca. Nella finestra di dialogo Funzionalità Windows abilitare Hyper-V e Piattaforma Windows Hypervisor:

    Enabling Hyper-V and Windows Hypervisor Platform for .NET MAUI.

    Dopo aver apportato queste modifiche, riavviare il computer.

    Importante

    Nell'aggiornamento di ottobre 2018 di Windows 10 (RS5) e versioni successive, è necessario abilitare solo Hyper-V, perché la piattaforma WHPX (Windows Hypervisor Platform) verrà usata automaticamente.

  2. Assicurarsi che il dispositivo virtuale creato nell'Gestione dispositivi Android sia un'immagine di sistema basata su x86-64 o x86. Se si usa un'immagine di sistema basata su Arm, il dispositivo virtuale non verrà accelerato e verrà eseguito lentamente.

Dopo aver abilitato Hyper-V, sarà possibile eseguire l'emulatore Android accelerato.

Accelerare con AEHD

Se il computer non supporta Hyper-V, è consigliabile usare AEHD per accelerare l'emulatore Android. Prima di poter installare e usare AEHD, leggere la sezione seguente per verificare che il computer supporti AEHD.

Verificare il supporto per AEHD

Il computer deve soddisfare i criteri seguenti per supportare AEHD:

  • Un processore Intel o AMD con estensione di virtualizzazione, che deve essere abilitato nel BIOS.
  • Windows 11 a 64 bit, Windows 10, Windows 8 o Windows 7.
  • Hyper-V deve essere disattivato.

Nota

Diverse funzionalità di Windows abilitano Hyper-V in modo implicito. Per altre informazioni, vedere Verifica doppia durante la disabilitazione di Hyper-V in developer.android.com.

Abilitare l'accelerazione AEHD in Windows

Se il computer soddisfa i criteri precedenti, seguire questa procedura per accelerare l'emulatore Android con AEHD:

  1. In Visual Studio selezionare la voce di menu Strumenti > Android > SDK Manager... .

  2. Nella finestra Android SDK e strumenti selezionare la scheda Strumenti.

  3. Nella scheda Strumenti espandere Extra, selezionare la casella di controllo per l'elemento Driver Hypervisor dell'emulatore Android (programma di installazione) e quindi selezionare il pulsante Applica modifiche:

    Installing AEHD through the Android SDK manager in Visual Studio.

    Nota

    In alternativa, È possibile scaricare e installare AEHD da GitHub. Dopo aver decompresso il pacchetto driver, eseguire silent_install.bat in una riga di comando con privilegi di amministratore.

  4. Assicurarsi che il dispositivo virtuale creato nell'Gestione dispositivi Android sia un'immagine di sistema basata su x86-64 o x86. Se si usa un'immagine di sistema basata su Arm, il dispositivo virtuale non verrà accelerato e verrà eseguito lentamente.

Dopo l'installazione, verificare che il driver funzioni correttamente usando il comando seguente:

sc query aehd

Dopo l'installazione e l'esecuzione di AEHD, sarà possibile eseguire l'emulatore Android accelerato.

Risoluzione dei problemi

Per informazioni su come risolvere i problemi di accelerazione hardware, vedere la guida alla risoluzione dei problemi dell'emulatore Android.