L'émulateur Android est un peu lent. Pour certains appareils, tels que le Motorola Droid et le Nexus One, l'application s'exécute plus rapidement dans l'appareil que dans l'émulateur. C'est un problème lors du test des jeux et des effets visuels.
Comment faire en sorte que l'émulateur s'exécute aussi vite que possible? Je suis en train de jouer avec ses paramètres mais je n'ai pas trouvé de configuration qui montre une amélioration notable pour le moment.
~ 50% plus rapide
Accédez au dossier racine du SDK Android et accédez à extras\intel\Hardware_Accelerated_Execution_Manager. Exécutez le fichier IntelHaxm.exe à installer. (Dans Android Studio, vous pouvez accéder à: Paramètres -> Android SDK -> Outils SDK -> Intel x86 Emulator Accelerator (programme d'installation HAXM))
Créez un fichier AVD avec "Intel atom x86" CPU/ABI
Aussi n'oubliez pas d'installer celui-ci
P.S. lors de la création d’AVD, ajoutez une mémoire d’émulation: Matériel/Nouveau/Taille du RAM de l’appareil/Valeur de configuration 512 ou plus
P.S. pour Fedora , pour Ubunt
P.S: Consultez cet outil, très pratique même essai
UPDATE: Maintenant qu'une image Intel x86 est disponible, la meilleure réponse est par zest dessus.
Comme l'a signalé correctement CommonsWare, l'émulateur est lent, car il émule un processeur ARM, qui nécessite une traduction en opcodes Intel. Cette virtualisation gruge le processeur.
Pour rendre l'émulateur plus rapide, vous devez lui donner plus de temps. Commencez avec un processeur rapide ou effectuez une mise à niveau si vous le pouvez.
Ensuite, donnez à l'émulateur plus de la CPU que vous avez:
Je constate quelque part une amélioration de 50% avec ces deux changements en place.
Pour définir l’affinité processeur sur Windows 7:
Remarque: lorsque vous changez d'affinité de cette manière, cela ne change que pour la durée du processus. Prochain départ, vous devez le refaire.
Je voudrais suggérer de donner Genymotion un spin. Il fonctionne dans la VirtualBox d’Oracle et atteindra légitimement 60 fps sur un système modéré.
Voici une capture d'écran de l'un de mes ateliers, fonctionnant sur un modèle MacBook Air bas de gamme 2012:
Si vous ne pouvez pas lire le texte, c'est un émulateur Nexus 7 fonctionnant à 56,6 fps. Le gros bonus supplémentaire est que Google Play et ses services sont fournis avec les machines virtuelles.
(La source de l'animation démo peut être trouvée ici .)
Activez l'accélération matérielle du GPU (en plus du HAXM d'Intel), si vous utilisez API 15 v3 ou plus récente et SDK Tools v17 +. L'accélération graphique de l'émulateur tire parti du matériel graphique de votre ordinateur de développement, en particulier de son unité de traitement graphique (GPU), pour accélérer l'affichage de l'écran. Cela donne une augmentation notable de la vitesse.
Pour activer l'accélération graphique activée par défaut sur votre émulateur : lors de la création de l'AVD, dans la section Matériel, cliquez sur Nouveau, sélectionnez Émulation GPU et définissez la valeur sur Oui.
Pour activer l'accélération uniquement à l'exécution : utilisez l'indicateur -gpu lors du démarrage de l'émulateur comme suit:
emulator -avd <avd_name> -gpu on
Éditer Bien que l’utilisation des images Intel permette de gagner en performances, les performances obtenues en utilisant Genymotion sont bien meilleures. Voir réponse de Paul Lammertsma .
Réponse précédente
Avec ADT rev 17, l'émulateur prend en charge l'exécution d'images système x86 en mode de virtualisation sous Windows et Mac OS X. Cela a un impact notable sur les performances.
ADT rev 17 notes: http://Android-developers.blogspot.jp/2012/03/updated-sdk-tools-and-adt-revision-17.html
Configuration de l'accélération de la machine virtuelle: http://developer.Android.com/guide/developing/devices/emulator.html#accel-vm
Je suis récemment passé d'un core 2 @ 2.5 avec 3 Go de RAM à un i7 @ 1.73 avec 8 Go de RAM (les deux systèmes utilisaient Ubuntu 10.10) et l'émulateur s'exécute au moins deux fois plus vite maintenant. Lancer plus de matériel sur cela aide certainement.
Je voulais juste dire qu'après l'installation de l'accélérateur Intel HAXM et de l'utilisation de l'image Intel Atom, l'émulateur semble fonctionner 50 fois plus vite. La différence est incroyable, jetez-y un œil!
http://www.developer.com/ws/Android/development-tools/haxm-speeds-up-the-Android-emulator.html
J'ai remarqué que l'émulateur utilisait uniquement le noyau 0 par défaut. La plupart des applications Windows utilisaient par défaut "n'importe quel" noyau. En outre, si vous le mettez sur un autre noyau (comme le dernier), l'émulateur peut devenir fou. Si vous le pouvez, vous pouvez essayer de placer vos applications à utilisation intensive du processeur sur les autres cœurs du processeur pour augmenter la vitesse.
Sur le plan matériel, obtenez le processeur le plus rapide qui soit pour les applications monocœur. Plus de 2 cœurs pourraient ne pas connaître une énorme différence en termes de performances d'émulateur.
Eclipse + l'émulateur Android consomment ensemble une tonne de RAM. Je recommanderais 3 Go de RAM au moins parce que j'ai utilisé un système avec 2 Go de RAM et que le système a ralenti, car le système est à court de RAM et a commencé à utiliser le fichier d'échange. .
Je pense que les meilleurs processeurs auront probablement une horloge haute (utilisez l'horloge uniquement comme mesure pour les processeurs de la même série), gèrent bien les opérations non-SIMD et disposent d'un mécanisme turbo boost. Il n'y a pas beaucoup de tests de performances basés sur Java, mais globalement, recherchez des tests de performances d'applications tels que la compression et bureautique. Ne regardez pas les jeux ou les médias, car ceux-ci sont grandement affectés par SIMD. Si vous trouvez un Java un, c'est encore mieux.
Sur cette année google I/O (2011), Google a démontré un émulateur plus rapide. Le problème ne concerne pas tant le code d'octet entre ARM que x86, mais le rendu du logiciel effectué par QEMU. Ils contournent le rendu de QEMU et envoient le rendu directement à un serveur X, je crois. Ils ont montré un jeu de voiture avec de très bonnes performances et fps.
Je me demande quand cela sera disponible pour les développeurs ...
Google a récemment annoncé un nouvel émulateur pour Android. C'est beaucoup plus rapide et meilleur que l'ancien. Vous pouvez trouver plus d'informations à ce sujet ici .
Merci @zest! Travaillé comme un charme. Quelques points à noter: Nécessité d’appliquer le correctif d’Intel pour HAXM afin de traiter le problème de panique du noyau: http://software.intel.com/en-us/Android/articles/intel-hardware-accelerated-execution-) gestionnaire Notez également que si vous avez plusieurs abi, vous devez en désinstaller un en raison d’un bogue de la dernière version de l’API Android (r19): https://code.google.com/p/Android/issues/detail?id=6674 (supprimez armeabi-v7a dans ce cas, car vous voulez le xi abi). Outre les 45 minutes qu'il m'a fallu pour les résoudre, ce fut un exercice très enrichissant en termes de performances accrues de l'émulateur.
Je pense que c’est parce que la machine virtuelle clr utilise cpu directement sans conversion de code opcode. Il peut s’agir d’une optimisation pour l’application CLR ou de Windows Mobile/Windows Phone 7 démarré sur le processeur INTEL. Android plate-forme basée sur Linux et théoriquement, vous pouvez démarrer Android sur une machine virtuelle dans un environnement i686. Dans ce cas, les machines virtuelles telles que vmware pourraient exécuter certains codes d'opération directement. Mais cette option ne sera autorisée que si vous écrivez sur Java. Parce que les Java interprètent leur code d'octet ou le précompilent avant l'exécution. voir: http://www.taranfx.com/how-to-run-google-Android-in-virtualbox-vmware-on-netbooks
Utilisez Genymotion au lieu de l'émulateur. Genymotion a de meilleures performances https://www.genymotion.com
Vous pouvez également essayer Visual Studio Android Emulator , qui peut également être installé en tant qu'émulateur autonome (vous n'avez pas besoin de Visual Studio). Veuillez noter qu'il ne peut être installé que sur Windows Pro ou des systèmes supérieurs.
choisissez un émulateur basse résolution (ex: Nexus S) si vous n'avez pas une bonne carte graphique (comme moi)
Une alternative à l'émulateur est la machine virtuelle AndroVM, qui s'exécute beaucoup plus rapidement que l'émulateur et prend en charge l'accélération OpenGL:
Pour l'anecdote, je pense qu'il fonctionne plus rapidement que les appareils Android actuels.
J'utilise le processeur/processeur Intel (86). J'ai créé un autre émulateur en utilisant ARM (armeabi-v7a) et j'ai trouvé une amélioration significative avec la vitesse. J'utilise la plate-forme 4.1.2 API niveau 16
J'espère que cela t'aidera.
Goto to your BIOS settings. Enable your Virtualization technology in your settings..
Cela a résolu mon problème ...
Mettez à jour votre Android Studio actuel sur Android Studio 2. Et mettez également à jour les images système.
L’émulateur Android Studio 2.0 est environ 3 fois plus rapide que l’émulateur précédent, et avec les améliorations apportées à la BAD, vous pouvez désormais transmettre des applications et des données 10 fois plus rapidement à l’émulateur qu’à un périphérique physique. Tout comme un périphérique physique, l'émulateur officiel Android comprend également les services Google Play intégrés, ce qui vous permet de tester davantage de fonctionnalités d'API. Enfin, le nouvel émulateur dispose de nombreuses nouvelles fonctionnalités pour gérer les appels, la batterie, le réseau, le GPS, etc.