android accelerer - Pourquoi l'émulateur Android est-il si lent? Comment pouvons-nous accélérer l'émulateur Android?




15 Answers

Mettre à jour

Vous pouvez maintenant activer l'option de démarrage rapide pour Android Emulator. Cela économisera l’état de l’émulateur et le lancera rapidement au prochain démarrage.

Cliquez sur le bouton d'édition de l'émulateur, puis sur Afficher les paramètres avancés . Activez ensuite Quick Boot comme ci-dessous.

Android Development Tools (ADT) 9.0.0 (ou une version ultérieure) possède une fonctionnalité qui vous permet de sauvegarder l’état de l’AVD (émulateur) et vous permet de démarrer votre émulateur instantanément. Vous devez activer cette fonctionnalité lors de la création d'un nouveau fichier AVD ou vous pouvez simplement le créer ultérieurement en modifiant le fichier AVD.

De plus, j'ai augmenté la Device RAM Size l' Device RAM Size à 1024 ce qui donne un émulateur très rapide.

Reportez-vous aux captures d'écran ci-dessous pour plus d'informations.

Création d'un nouveau DAV avec la fonction de sauvegarde d'instantané.

Lancer l'émulateur à partir de l'instantané.

Et pour accélérer votre émulateur, vous pouvez vous référer à Accélérez votre émulateur Android! :

emulateur memu

J'ai un processeur Celeron à 2,67 GHz et 1,21 Go de RAM sur une machine x86 Windows XP Professionnel.

Si j'ai bien compris, l' émulateur Android devrait démarrer assez rapidement sur une telle machine, mais ce n'est pas le cas pour moi. J'ai suivi toutes les instructions pour configurer l'EDI, les SDK, les JDK, etc., et j'ai réussi à démarrer l'émulateur rapidement, mais c'est très rare. Comment puis-je, si possible, résoudre ce problème?

Même s'il démarre et charge l'écran d'accueil, il est très lent. J'ai essayé l' IDE Eclipse en versions 3.5 (Galileo) et 3.4 (Ganymede).




Essayez Android x86 . C'est beaucoup plus rapide que l'émulateur Google Android. Suivez ces étapes:

  1. Installez VirtualBox .
  2. Téléchargez le fichier ISO dont vous avez besoin.
  3. Créez une machine virtuelle sous Linux 2.6 / Other Linux, 512 Mo de RAM, HD 2 Go. Réseau: PCnet-Fast III, attaché au NAT . Vous pouvez également utiliser un adaptateur ponté, mais vous avez besoin d'un serveur DHCP dans votre environnement.
  4. Installez Android x86 sur l'émulateur, lancez-le.
  5. Appuyez sur Alt + F1 , tapez netcfg , rappelez-vous l'adresse IP, appuyez sur Alt + F7 .
  6. Exécutez cmd sur votre système Windows XP, changez le répertoire en votre répertoire d’outils Android, tapez adb connect <virtual_machine_IP> .
  7. Lancez Eclipse, ouvrez le plugin ADT, trouvez le périphérique et profitez-en!



L'émulateur inclus dans votre (ancienne) version d'Eclipse est très lent.

Les émulateurs récents sont plus rapides qu’ils ne l’étaient en 2010. Mettez à jour votre SDK / IDE.

Personnellement, j'utilise un vrai téléphone pour faire mes tests. C'est plus rapide et les tests sont plus réalistes. Mais si vous souhaitez tester votre application sur de nombreuses versions d'Android et ne pas acheter plusieurs téléphones, vous devrez utiliser l'émulateur de temps à autre.




Intel a publié les instructions d'installation recommandées pour l'émulateur ICS le 15 mai 2012. Cela a fonctionné pour moi. L'émulateur est maintenant rapide et l'interface utilisateur est lisse.

La première moitié des instructions est suffisamment détaillée. Par conséquent, je suppose que vous avez pu installer la ou les images système Atom Intel x86 à l’aide du gestionnaire de SDK Android, ainsi que de Intel HAXM.

Maintenant, assurez-vous que tout le reste est configuré pour que vous puissiez profiter d'un émulateur très performant:

Et commencez le:

sudo kextload -b com.intel.kext.intelhaxm (mac)

Si HAXM fonctionne correctement, vous pouvez voir ce message lors du lancement de l'émulateur:

HAX fonctionne et l'émulateur fonctionne en mode virt rapide

Sinon, vous pouvez voir cette erreur:

HAX ne fonctionne pas et l'émulateur s'exécute en mode d'émulation:
Impossible d'ouvrir le module hax

  • Utilisez l'émulation GPU. Vous ne pouvez pas utiliser l'option Snapshot lorsque vous utilisez l'émulation GPU au moment de l'écriture. Assurez-vous que l'émulation GPU est définie sur "oui".

  • Définissez la mémoire du périphérique sur 1024 Mo ou plus , mais pas plus que le paramètre Intel HAXM. J'utilise 1024 Mo par périphérique et 2048 pour HAXM.

Vérifiez toujours les paramètres après avoir sauvegardé! L'émulateur est très pointilleux sur ce qu'il vous permet de définir et rétablit les configurations sans vous en informer.

Avec ces paramètres, le clavier du logiciel n'apparaît plus, pas plus que les touches de retour à l'écran, les menus et les touches récentes. Cela semble être une limitation de l'image système ICS Intel x86 actuelle. Vous devrez utiliser les raccourcis clavier .

Sous Mac OS, vous devez maintenir les touches fn + control pour que les touches F1 - F12 fonctionnent. Les pages haut / bas / gauche / droite peuvent être réalisées à l'aide des touches Ctrl + Flèches.




J'ai remarqué que l'émulateur démarre beaucoup plus rapidement s'il n'y a pas de serveur de moniteur de débogage Dalvik (DDMS) connecté. Donc, si vous démarrez l'émulateur à partir de Virtual Device Manager "SDK Setup.exe" et qu'Eclipse n'est pas démarré, l'émulateur fonctionne plus rapidement.

Si vous démarrez l'émulateur à partir d'Eclipse: DDMS est présent, l'émulateur est parfois extrêmement lent, mais parfois plus rapide.




À partir de la révision 17 des outils de développement SDK Android, l'émulateur peut utiliser l'accélération graphique et les extensions fournies par le processeur pour une meilleure efficacité. Les conditions préalables, la configuration complète et les notes de l’utilisateur se trouvent à:

http://developer.android.com/guide/developing/devices/emulator.html#acceleration

Pour activer l'accélération GPU , exécutez l'émulateur à partir de la ligne de commande ou ajoutez "-gpu on" aux options supplémentaires de la ligne de commande de l'émulateur dans la configuration AVD.

emulator -avd <avd_name> -gpu on

Pour utiliser les extensions de machine du processeur, vous devez installer le pilote (attention, car il peut entrer en conflit avec les pilotes VirtualBox ou VMware existants). Une fois installé, il sera automatiquement utilisé chaque fois que vous utiliserez un fichier AVD x86.




SDK Android rév. 17 prend en charge l'accélération de machine virtuelle à l'aide des technologies de virtualisation AMD et Intel.

Cette fonctionnalité peut améliorer beaucoup les performances de l'émulateur!

Consultez la section suivante de la documentation de l'émulateur Android pour plus de détails: Configuration de l'accélération de machine virtuelle

N'oubliez pas d'installer le pilote approprié à votre système d'exploitation:

Après avoir installé les pilotes et téléchargé une image système Android X86 (comme décrit dans la documentation), vous devriez pouvoir créer un nouveau fichier AVD à l'aide de l'image x86:

Par exemple:

  • Cible: Image système Intel Atom x86 - API de niveau 10
  • CPU / ABI: Intel Atom (x86)



L'émulateur semble se ralentir lorsqu'il est inactif. Cela se traduit par un survol rapide des touches du côté et par l’observation des réponses lumineuses. Pour contourner le -icount auto , je passe -icount auto à QEMU lors du démarrage de l'émulateur. Vous pouvez créer un fichier batch appelé my_avd.bat pour le faire pour vous:

emulator @my_avd -no-boot-anim -qemu -icount auto
  • @my_avd - lance un périphérique virtuel nommé 'my_avd'
  • -no-boot-anim - désactive l'animation pour un démarrage plus rapide
  • -qemu args... - passe les arguments à qemu
  • -icount [N|auto] - -icount [N|auto] compteur d'instructions virtuelles avec 2 ^ N ticks d'horloge par instruction

Cela rendait les animations plus fluides et adb install décuple.




La version 9 de l'émulateur Android dispose d'une nouvelle fonctionnalité "d'instantané". Vous pouvez enregistrer l'état de l'émulateur (créer une image de l'émulateur) et éviter le démarrage au démarrage de l'émulateur.







Utilisez l'accélérateur d'émulateur Intel x86

Commencez par installer le HAXM (Intel x86 Emulator Accelerator). Cela peut être téléchargé directement à partir d'Intel ou en utilisant Android SDK Manager. Dans le gestionnaire de SDK, il se trouve sous Extras.

Dans la version d'Android Studio que j'ai utilisée (0.8.9), Android SDK Manager télécharge HAXM, mais n'exécute pas le programme d'installation (je suppose que cela sera résolu dans les versions ultérieures). Pour exécuter le logiciel installé, je devais accéder à C: \ Program Files (x86) \ Android \ android-studio \ sdk \ extras \ intel \ Hardware_Accelerated_Execution_Manager et lancer manuellement intelhaxm.exe.

HAXM fonctionne avec les périphériques Intel. C'est pourquoi un nouvel émulateur avec processeur Intel a été créé.

Créer un nouveau DAV avec Intel Atom x86

Cela améliora considérablement les choses, mais l'émulateur se sentait encore un peu lent. La dernière étape a été de sélectionner Utiliser le GPU hôte dans Android Virtual Device Manager (AVD).

Après ces modifications, Android Emulator a été lancé dans 5 à 10 secondes et s’est déroulé sans décalage notable. Sachez que ces fonctions dépendent du matériel (CPU / GPU) et peuvent ne pas fonctionner sur certains systèmes.




Essayez genymotion.com pour Android Studio. Brûlant vite! Juste besoin d'une installation unique. Pas plus de douleur AVD.




Après avoir développé pendant un moment, mon émulateur est devenu brutalement lent. J'ai choisi d' effacer les données utilisateur , et c'était beaucoup mieux. Je suppose qu'il faut du temps pour charger chaque fichier APK que vous avez déployé.




Eh bien, puisque quelqu'un a suggéré Android x86 comme émulateur de tests alternatifs, je vous présenterai également mon préféré. Ce n'est peut-être pas une alternative pour tout le monde, mais pour moi c'est parfait!

Utilisez le lecteur Bluestacks . Il fonctionne sous Android 2.3.4 et est très fluide et rapide. Parfois, il est même plus rapide qu'un appareil normal. Le seul inconvénient est que vous pouvez simplement tester des applications sur l'API de niveau 10 et sur une seule taille d'écran, mais c'est parfait pour tester si cela fonctionne ou non. Il suffit de connecter le joueur avec le adben cours d'exécution

adb connect 127.0.0.1 

Après la compilation, il s'installe instantanément. C'est très impressionnant, vu que j'ai un matériel informatique plutôt moyen (double cœur avec 4 Go de RAM).




J'ai remarqué que mon émulateur ( plug-in Eclipse ) était considérablement ralenti par les paramètres d'anti-aliasing de ma carte graphique Nvidia . Le fait de supprimer 2x anti-aliasing du menu graphique et de le remplacer par une application contrôlée le rend plus réactif. C'est encore lent, mais meilleur qu'avant.




Related

android performance android-emulator genymotion qemu