Partager via


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

Avec Visual Studio, vous pouvez facilement tester et déboguer votre application .NET MAUI pour Android dans les émulateurs pour les situations où un appareil Android n’est pas disponible. Toutefois, si l’accélération matérielle n’est pas disponible ou activée, l’émulateur s’exécute 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 votre architecture de 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 à des fins différentes, notamment la connexion à un émulateur s’exécutant sur un Mac à partir d’une machine virtuelle Windows. Pour plus d’informations, consultez Se connecter à un émulateur Android sur un Mac à partir d’une machine virtuelle Windows.

Sur macOS, l’émulateur Android utilise l’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 :

  • Plateforme Windows Hypervisor (WHPX). 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.
  • Pilote de l'hyperviseur de l'emulator Android (AEHD)

Note

Le Gestionnaire d’exécution accélérée du matériel Intel (HAXM) est déconseillé à partir de l’émulateur 33.x.x.x. Il 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 inférieure, consultez Configurer l’accélération de machine virtuelle à l’aide d’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, AEHD peut être utilisé. 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 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.

Limitations de l’appareil Windows ARM

L’émulateur Android nécessite actuellement une architecture de processeur x64 et n’est pas prise en charge sur les appareils Windows ARM. Cette limitation affecte les appareils tels que :

  • Surface Pro X
  • Surface Pro 9 (variante 5G/ARM)
  • Autres appareils Windows avec processeurs ARM64 (Snap xeon, etc.)

Si vous utilisez un appareil Windows ARM, tenez compte des alternatives suivantes :

  • Utilisez un appareil Android physique pour le test via le débogage USB. Pour plus d’informations, consultez Configurer l’appareil Android pour le débogage.
  • Utilisez des services de test basés sur le cloud ou des environnements de développement distants avec une architecture x64.
  • Envisagez d’utiliser le sous-système Windows pour Android (WSA) si disponible, bien que cela présente différentes limitations et fonctionnalités par rapport à l’émulateur Android.

Pour plus d’informations sur la configuration requise pour l’émulateur Android, consultez la configuration requise pour l’émulateur Android sur developer.android.com.

Pour plus d’informations sur le lancement et le débogage avec l’émulateur Android, 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 de Hyper-V

Hyper-V s’exécute sur la plateforme Hyperviseur Windows. Pour utiliser l’émulateur Android avec Hyper-V, votre ordinateur doit respecter les critères suivants pour prendre en charge la plateforme Windows Hypervisor :

  • Le matériel de votre ordinateur doit répondre aux exigences suivantes :

    • Processeurs Intel prenant en charge la technologie de virtualisation (VT-x), les tables de pages étendues (EPT) et les fonctionnalités d’invité illimité (UG). VT-x doit être activé dans le BIOS de votre ordinateur.
    • Processeurs AMD : processeur AMD Ryzen recommandé. La virtualisation ou la machine virtuelle SVM doivent être activées 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 le logiciel de votre ordinateur sont compatibles avec Hyper-V, ouvrez une invite de commandes et tapez la commande suivante :

systeminfo

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

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

Si le résultat Hyper-V indique qu’un hyperviseur est en cours d’exécution, 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, procédez comme suit pour accélérer l’émulateur Android avec Hyper-V :

  1. Entrez les 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 à la fois Hyper-V et La plateforme Hyperviseur Windows :

    Activation de Hyper-V et de la plateforme Windows Hypervisor pour .NET MAUI.

    Après avoir apporté ces modifications, redémarrez votre ordinateur.

    Important

    Sur Windows 10 October 2018 Update (RS5) et versions ultérieures, vous devez uniquement activer Hyper-V, car il utilisera automatiquement Windows Hypervisor Platform (WHPX).

  2. Vérifiez que l’appareil virtuel que vous avez créé dans Android Device Manager est une image système x86-64 ou x86. Si vous utilisez une image système Arm, l’appareil virtuel ne sera pas accéléré et s’exécutera 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 respecter les critères suivants pour prendre en charge AEHD :

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

Note

Plusieurs fonctionnalités de Windows permettent Hyper-V implicitement. Pour plus d’informations, consultez Vérification double 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 > Android SDK Manager...

  2. Dans la fenêtre Outils et Kits de développement logiciel (SDK) Android , sélectionnez l’onglet Outils .

  3. Sous l’onglet Outils, développez Extras, cochez la case correspondant à l’élément Pilote Hypervisor (programme d’installation) de l’émulateur Android , puis sélectionnez le bouton Appliquer les modifications :

    Installation d’AEHD via le gestionnaire android SDK dans Visual Studio.

    Note

    Vous pouvez également télécharger et installer AEHD à partir de GitHub. Après avoir décompressé le package de pilotes, exécutez une silent_install.bat ligne de commande avec des privilèges d’administrateur.

  4. Vérifiez que l’appareil virtuel que vous avez créé dans Android Device Manager est une image système x86-64 ou x86. Si vous utilisez une image système Arm, l'appareil virtuel ne sera pas accéléré et s'exécutera lentement.

AEHD 2.1 et versions ultérieures

Après l’installation, vérifiez que le pilote fonctionne correctement à l’aide de 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 que 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 inférieur

Après l’installation, vérifiez que le pilote fonctionne correctement à l’aide de 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 que 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 versions ultérieures

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

    sc stop gvm
    sc delete gvm
    

Important

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

Troubleshoot

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