Partager via


Comment activer l’accélération matérielle avec des émulateurs Android (Hyper-V et AEHD)

Avec Visual Studio, vous pouvez tester et déboguer facilement votre application .NET MAUI pour Android dans des émulateurs, pour les situations où un appareil Android n’est pas disponible. Cependant, si l’accélération matérielle n’est pas disponible ou activée, l’émulateur va s’exécuter très lentement. Vous pouvez améliorer considérablement les performances de l’émulateur en activant l’accélération matérielle et en utilisant des images d’appareil virtuel appropriées pour l’architecture de votre processeur. Pour plus d’informations, consultez Configurer l’accélération matérielle pour l’émulateur Android sur developer.android.com.

L’émulateur fournit des fonctionnalités de mise en réseau polyvalentes qui peuvent être utilisées à différentes fins, notamment la connexion à un émulateur s’exécutant sur un Mac depuis une machine virtuelle Windows. Pour plus d’informations, consultez Se connecter à un émulateur Android sur un Mac depuis une machine virtuelle Windows.

Sur macOS, l’émulateur Android utilise le framework Hypervisor.Framework intégré. Pour plus d’informations, consultez Hyperviseur sur developer.apple.com.

Accélérer les émulateurs Android sur Windows

Les technologies de virtualisation suivantes sont disponibles pour accélérer l’émulateur Android sur Windows :

  • La plateforme WHPX (Windows Hypervisor Platform). Hyper-V est une fonctionnalité de virtualisation de Windows qui permet d’exécuter des systèmes informatiques virtualisés sur un ordinateur hôte physique.
  • Le pilote AEHD (Android Emulator Hypervisor Driver).

Remarque

Le gestionnaire HAXM (Hardware Accelerated Execution Manager) est déconseillé depuis l’émulateur 33.x.x.x et a été remplacé par AEHD sur les processeurs Intel. Pour plus d’informations sur l’utilisation de HAXM sur l’émulateur 32.x.x.x.x et antérieur, consultez Configurer l’accélération des machines virtuelles en utilisant Intel HAXM sur Windows sur developer.android.com.

Pour une expérience optimale sur Windows, nous vous recommandons d’utiliser WHPX pour accélérer l’émulateur Android. Si WHPX n’est pas disponible sur votre ordinateur, vous pouvez utiliser AEHD. L’émulateur Android utilise automatiquement l’accélération matérielle si les critères suivants sont remplis :

  • L’accélération matérielle est disponible et activée sur votre ordinateur de développement.
  • L’émulateur exécute une image système créée pour un appareil virtuel basé sur x86-64 ou x86.

Important

Un émulateur accéléré de machine virtuelle peut s’exécuter à l’intérieur d’une autre machine virtuelle, y compris Microsoft Dev Box, à condition que la virtualisation imbriquée soit activée dans la machine virtuelle.

Pour plus d’informations sur le lancement de l’émulateur Android, et sur le débogage à l’aide de ce dernier, consultez Débogage sur l’émulateur Android.

Accélérer avec Hyper-V

Avant d’activer Hyper-V, lisez la section suivante pour vérifier que votre ordinateur prend en charge Hyper-V.

Vérifier la prise en charge d’Hyper-V

Hyper-V s’exécute sur la plateforme d’hyperviseur Windows. Pour permettre l’utilisation de l’émulateur Android avec Hyper-V, l’ordinateur doit répondre aux critères suivants afin de prendre en charge la plateforme d’hyperviseur Windows :

  • Votre matériel informatique doit répondre aux exigences suivantes :

    • Processeurs Intel prenant en charge les fonctionnalités VT-x (Virtualization Technology), EPT (Extended Page Tables) et UG (Unrestricted Guest). VT-x doit être activé dans le BIOS de votre ordinateur.
    • Processeurs AMD : Processeur AMD Ryzen recommandé. La virtualisation ou SVM doit être activé dans le BIOS de votre ordinateur.
  • Votre ordinateur doit exécuter les versions Entreprise, Professionnel ou Éducation de Windows 11 ou Windows 10 version 1909 ou ultérieure.

Pour vérifier que le matériel et les logiciels de votre ordinateur sont compatibles avec Hyper-V, ouvrez une invite de commandes et tapez la commande suivante :

systeminfo

Si toutes les exigences listées relatives à Hyper-V ont la valeur Oui, votre ordinateur peut prendre en charge Hyper-V. Par exemple :

Exemple de sortie de systeminfo lors de la vérification de la prise en charge d’Hyper-V pour .NET MAUI.

Si le résultat pour Hyper-V indique qu’un hyperviseur est actuellement en cours d’exécution, c’est qu’Hyper-V est déjà activé.

Important

Si Windows s’exécute à l’intérieur d’une machine virtuelle, la virtualisation imbriquée doit être activée dans l’hyperviseur hôte.

Activer l’accélération Hyper-V dans Windows

Si votre ordinateur répond aux critères ci-dessus, effectuez les étapes suivantes pour accélérer l’émulateur Android avec Hyper-V :

  1. Entrez fonctionnalités Windows dans la zone de recherche Windows, puis sélectionnez Activer ou désactiver les fonctionnalités Windows dans les résultats de la recherche. Dans la boîte de dialogue Fonctionnalités Windows, activez Hyper-V et la plateforme d’hyperviseur Windows :

    Activation d’Hyper-V et de Windows Hypervisor Platform pour .NET MAUI.

    Une fois que vous avez apporté ces changements, redémarrez l’ordinateur.

    Important

    Sur Windows 10 avec la mise à jour d’octobre 2018 (RS5) et ses versions ultérieures, il vous suffit d’activer Hyper-V, car il utilisera WHPX automatiquement.

  2. Vérifiez que l’appareil virtuel que vous avez créé dans le Gestionnaire d’appareils Android est une image système basée sur x86-64 ou x86. Si vous utilisez une image système basée sur ARM, l’appareil virtuel ne sera pas accéléré et va s’exécuter lentement.

Une fois Hyper-V activé, vous serez en mesure d’exécuter votre émulateur Android accéléré.

Accélérer avec AEHD

Si votre ordinateur ne prend pas en charge Hyper-V, vous devez utiliser AEHD pour accélérer l’émulateur Android. Avant de pouvoir installer et utiliser AEHD, lisez la section suivante pour vérifier que votre ordinateur prend en charge AEHD.

Vérifier la prise en charge d’AEHD

Votre ordinateur doit répondre aux critères suivants pour prendre en charge AEHD :

  • Un processeur Intel ou AMD avec l’extension de virtualisation, qui doit être activée dans votre BIOS.
  • Windows 11 ou Windows 10 64 bits.
  • Hyper-V doit être désactivé.

Remarque

Plusieurs fonctionnalités de Windows activent implicitement Hyper-V. Pour plus d’informations, consultez Points à vérifier lors de la désactivation d’Hyper-V sur developer.android.com.

Activer l’accélération AEHD dans Windows

Si votre ordinateur répond aux critères ci-dessus, procédez comme suit pour accélérer l’émulateur Android avec AEHD :

  1. Dans Visual Studio, sélectionnez l’élément de menu Outils > Android > Gestionnaire SDK Android....

  2. Dans la fenêtre Kits Android SDK et outils, sélectionnez l’onglet Outils.

  3. Sous l’onglet Outils, développez Extras, cochez la case pour Android Emulator Hypervisor Driver (programme d’installation), puis sélectionnez le bouton Appliquer les modifications :

    Installation d’AEHD via le Gestionnaire SDK Android dans Visual Studio.

    Remarque

    Vous pouvez aussi télécharger et installer AEHD depuis GitHub. Après avoir décompressé le package du pilote, exécutez silent_install.bat sur une ligne de commande avec des privilèges d’administrateur.

  4. Vérifiez que l’appareil virtuel que vous avez créé dans le Gestionnaire d’appareils Android est une image système basée sur x86-64 ou x86. Si vous utilisez une image système basée sur ARM, l’appareil virtuel ne sera pas accéléré et va s’exécuter lentement.

AEHD 2.1 et ultérieur

Après l’installation, vérifiez que le pilote fonctionne correctement en utilisant la commande suivante :

sc query aehd

Si le pilote fonctionne correctement, le message d’état inclut les informations suivantes :

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

Le message d’erreur suivant signifie que l’extension de virtualisation n’est pas activée dans votre BIOS ou qu’Hyper-V n’est pas désactivé :

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

Une fois qu’AEHD est installé et en cours d’exécution, vous serez en mesure d’exécuter votre émulateur Android accéléré.

AEHD 2.0 et antérieur

Après l’installation, vérifiez que le pilote fonctionne correctement en utilisant la commande suivante :

sc query gvm

Si le pilote fonctionne correctement, le message d’état inclut les informations suivantes :

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

Le message d’erreur suivant signifie que l’extension de virtualisation n’est pas activée dans votre BIOS ou qu’Hyper-V n’est pas désactivé :

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

Une fois qu’AEHD est installé et en cours d’exécution, vous serez en mesure d’exécuter votre émulateur Android accéléré.

Désinstaller AEHD

Pour désinstaller AEHD, utilisez les commandes suivantes sur une ligne de commande avec des privilèges d’administrateur :

  • AEHD 2.1 et ultérieur

    sc stop aehd
    sc delete aehd
    
  • AEHD 2.0 et antérieur

    sc stop gvm
    sc delete gvm
    

Important

Arrêtez les émulateurs x86 avant de désinstaller AEHD pour AMD.

Résolution des problèmes

Pour obtenir de l’aide sur la résolution des problèmes d’accélération matérielle, consultez le guide Résolution des problèmes de l’émulateur Android.