206 votes

L'émulateur Android ne montre rien sauf un écran noir et adb devices montre "device offline".

J'essaie juste de commencer le développement sous Android. Donc, le problème est que lorsque j'essaie de lancer un émulateur en lançant la commande émulateur @A2 un émulateur apparaît à l'écran. Mais même après 2 ou 3 heures d'attente, tout ce qui s'affiche est un écran noir. Pas même l'écran d'accueil Android ou le logo Android. Juste un écran noir. Et alors qu'initialement "adb devices" montre l'émulateur comme étant hors ligne, après 2-3 minutes, la liste des appareils connectés devient vide.

J'ai cherché partout sur le net et essayé toutes les étapes mentionnées ici comme tuer et redémarrer adb, installer java/Android dans un répertoire sans espaces, mais sans succès.

Mes installations Jdk et Android se trouvent dans les dossiers suivants :

C:\Java32BitInstallation C:\AndroidSdkInstallation Voici la liste des choses que j'ai téléchargées/installées pour lui :

  1. Outils SDK Android, révision 13
  2. Outils pour les plates-formes Android SDK, révision 10
  3. Plate-forme SDK Android 4.0.3, API 15, révision 1
  4. Jdk jdk-7u3-Windows-i586

Dans mon chemin j'ai ajouté * C:\AndroidSdkInstallation\android -sdk \platform - des outils ; C:\AndroidSdkInstallation\android -sdk \tools\ ; C:\Java32BitInstallation\ ; C:\Java32BitInstallation\bin *

Aussi, après avoir lu quelque part sur le net, j'ai ajouté la variable JAVA_HOME avec la valeur suivante C:\Java32BitInstallation\ Mais ça ne sert toujours à rien.

IntelliJ et Eclipse sont tous deux installés sur mon système. Mais comme je n'utilise aucun de ces logiciels pour démarrer l'émulateur, je ne soupçonne pas qu'il s'agisse d'une erreur.

Alors, est-ce que quelqu'un peut m'aider avec ce truc qui me rend fou. J'essaie depuis 10-12 jours et je n'ai pas été capable de démarrer l'émulateur, sans parler d'écrire mon premier programme "Hello world".

Notes supplémentaires : Mon système est une machine Windows 7 (64 bits). Auparavant, j'avais installé la version 64 bits de jdk, mais le problème était présent à ce moment-là aussi. Après avoir cherché sur Internet, j'ai désinstallé cette version et installé la version 32 bits de Java. Mais, encore une fois, ça ne sert à rien. Une chose, cependant, cette version 32 bits de Java (jdk 7 update 3), installe d'abord jre dans le cadre de l'installation de jdk et installe ensuite jre 7 . Donc maintenant j'ai 2 dossiers : jre et jre7 dans le dossier C:\Java32BitInstallation répertoire. Cela pourrait-il avoir un rapport avec le fait que mon émulateur ne s'affiche pas ? Dois-je spécifier des variables environnementales supplémentaires ou modifier celles qui existent déjà ? Merci de m'aider.

BTW, ai-je mentionné que le logcat ne montre rien.

3 votes

Je ne sais pas si vous avez réussi à résoudre ce problème. Récemment, j'ai eu le même problème. Essayez d'exécuter l'émulateur avec emulator -debug-init -logcat '*:v' . Cela pourrait vous conduire à la cause première. La mienne était un ServiceManager défaillant. Il s'est avéré que j'avais supprimé quelques fichiers ServiceManager.

1 votes

J'ai rencontré un écran noir au milieu de l'exécution de mon programme sur l'émulateur. Je vous accorde que votre problème ressemble à un problème de configuration d'avd, je voulais juste faire savoir aux autres que les fuites de mémoire peuvent aussi causer un écran noir. Mon logcat n'a pas montré Garbage collector GC_MESSAGE jusqu'à ce que j'efface l'avd, redémarre le logcat, et relance l'émulateur. J'espère que cela aidera quelqu'un car je viens de passer un bon moment à supprimer et recréer des AVD alors que ce n'était pas mon problème :-/

0 votes

Veuillez consulter le lien ci-dessous. Il a bien fonctionné pour moi. stackoverflow.com/questions/23509626/

138voto

jaltek Points 990

Mise à jour 25.07.2018 :

La dernière version d'Android Studio ne dispose plus de cette option. Si le problème persiste, essayez de passer d'une valeur à l'autre dans la liste déroulante "Emulated Performance" de la fenêtre Vérifier la configuration (si disponible) ou se référer à la Configurer le rendu graphique et l'accélération matérielle de l'émulateur .

Mise à jour 26.02.2014 :

Il y a deux indices dans le Configuration de l'accélération graphique chapitre de developer.Android.com.

Attention : À partir de la révision 17 du SDK Tools, la fonction d'accélération graphique pour l'émulateur est expérimentale ; faites attention aux incompatibilités et aux erreurs lorsque vous utilisez cette fonction.

et

Lancez le Gestionnaire AVD et créez un nouvel AVD dont la valeur cible est Android 4.0.3 (API Level 15), révision 3 ou supérieure.

Ainsi, Android 4.0.3 (niveau 15 de l'API) semble être la condition minimale pour l'accélération graphique.

Réponse originale

J'ai eu le même problème avec la dernière version du SDK Android.

J'ai simplement désactivé la case à cocher "Utiliser le GPU de l'hôte" dans les paramètres du périphérique virtuel et cela a recommencé à fonctionner.

L'option "Utiliser le GPU de l'hôte" ne fonctionne pour moi qu'avec Android 4.2 comme "cible".

3 votes

Ok, je l'ai. J'ai dû mettre à jour quelques trucs avec mon gestionnaire de SDK. Malheureusement, je ne peux pas vous dire exactement quelle mise à jour était la bonne, mais je suppose que cela a à voir avec les émulateurs de processeurs.

1 votes

Merci ! j'ai eu le même problème pendant des jours et je n'arrivais pas à le résoudre !

89 votes

Pour moi, c'est le contraire - je dois activer "HOST GPU" pour que cela fonctionne. Le seul problème est que je ne peux pas faire de captures d'écran dans ce mode :/.

83voto

ahetman Points 388

J'ai eu du mal à faire émuler les plus gros appareils (Nexus7 et 10), alors que les émulateurs de la taille d'un téléphone fonctionnaient très bien. Avec les tablettes, je n'obtenais qu'un écran noir sans rien pendant des heures. Ce qui m'a aidé est en fait l'OPPOSITION de ce que la plupart des gens recommandent ici : après avoir coché la case 'Utiliser le GPU de l'hôte' et réglé la cible sur la version la plus élevée d'Android (4.4.2 au moment où j'écris ces lignes), le 7 et le 10 fonctionnent comme prévu !

17 votes

Cela a également fonctionné pour moi. Je me suis assuré que l'option Utiliser le GPU hôte était cochée et que la cible était Android 4.4.2.

1 votes

Merci. J'ai coché l'option et la 4.2.2 a commencé à fonctionner ! Je crois aussi ce que d'autres personnes ont mentionné. Quel monde bizard java ! !!

0 votes

Exactement ce dont j'avais besoin. Merci !

4voto

TwoByteHero Points 51

A priori, vous avez un appareil mal configuré. Si vous le faites, il ne démarrera jamais et n'affichera jamais rien dans Logcat.

Je vous recommande de créer un nouveau périphérique en utilisant l'une des "définitions de périphérique" par défaut disponibles dans le gestionnaire AVD. Il suffit de mettre en surbrillance le type de dispositif souhaité dans l'onglet "Device Definitions" et de cliquer sur le bouton "Create AVD...", puis de remplir quelques détails. Je commencerais par ajuster le "Stockage interne" à environ 8 Go et (peut-être) une "Carte SD" de 2 Go en laissant tout le reste inchangé. Essayez de démarrer l'appareil et si vous voyez "Android" apparaître à l'écran, c'est que vous êtes lancé. Le premier démarrage prend généralement un certain temps, alors attendez et regardez Logcat pour tout problème (la perspective "DDMS" aide ici).

Si vous voyez toujours un écran noir avec une définition de périphérique par défaut, vous avez des problèmes ailleurs qui provoquent l'échec du périphérique. Si c'est le cas, la recherche dans les journaux est peut-être votre seule chance. Vous pouvez toujours essayer de retélécharger l'ADT et de réinstaller les SDK si rien d'autre ne fonctionne.

L'objectif ici est de vous permettre d'être opérationnel avec un appareil (très) basique, donc ne cherchez pas à obtenir des spécifications impressionnantes à ce stade, essayez simplement de le faire fonctionner. Une fois que c'est fait, essayez d'ajuster les paramètres un par un jusqu'à ce que vous ayez les spécifications qui vous conviennent. Gardez à l'esprit que l'émulateur a ses limites et qu'il ne peut se substituer à un appareil réel (même s'il fonctionne la plupart du temps ;).

0 votes

Je suis surpris de voir une réponse après presque un an de publication de la question. J'avais essayé les étapes précédentes que vous avez mentionnées, mais cela n'a pas aidé. J'ai mis à jour le SDk et cela a fonctionné.

3voto

CodeRat Points 1718

Il s'agit d'un bogue connu si vous avez sélectionné l'option "Utiliser le GPU de l'hôte" lors de la création de l'AVD. https://code.google.com/p/Android/issues/detail?id=28614
Décochez l'option et cela devrait fonctionner !

3voto

Agita Points 21

Essayez simplement de régler CPU/ABI sur "Intel Atom (x86)" et de désactiver la case à cocher "Utiliser le GPU de l'hôte".

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X