<p>Je développe une application et chaque fois que je l'exécute, je reçois le message suivant : </p>
<blockquote>
<p>Désolé, MyApp a cessé de fonctionner. </p>
</blockquote>
<p>Que dois-je faire pour résoudre ce problème ? </p>
<heure/>
Fournissez plus de détails. Cette question est destinée à guider les programmeurs Android débutants sur la façon d'essayer de résoudre le problème eux-mêmes ou de poser les bonnes questions. </em></p>
Vous pouvez utiliser l'outil ADB de Google pour que
Logcat文件
analyse le problème.Ouvrez le fichier
logcat.txt
et recherchez le nom de votre application. Il doit y avoir des informations sur la raison de l'échec, le numéro de ligne, le nom de la classe, etc.Cette réponse décrit le processus de récupération d'une trace de pile. Vous avez déjà une trace de pile ? Découvrez les traces de pile dans « Qu'est-ce qu'une trace de pile et comment l'utiliser pour déboguer les erreurs dans mon application ? ».
Question
Votre application s'est fermée car un
RuntimeException
non capturé a été lancé.Le plus courant d’entre eux est
NullPointerException
.Comment le résoudre ?
Chaque fois qu'une application Android plante (ou toute application Java),
堆栈跟踪
est écrit dans la console (logcat dans ce cas). Cette trace de pile contient des informations importantes nécessaires pour résoudre le problème.Android Studio
Dans la barre inférieure de la fenêtre, cliquez sur le panneau
Logcat
按钮。或者,您可以按下alt+6。确保在设备
avec votre émulateur ou appareil sélectionné. Ensuite, essayez de trouver la trace de pile affichée en rouge. Il se peut qu'il y ait beaucoup de choses enregistrées dans logcat, vous souhaiterez donc peut-être le faire défiler. Un moyen simple de trouver la trace de la pile consiste à effacer logcat (en utilisant la corbeille à droite) et à laisser l'application planter à nouveau.J'ai trouvé la trace de la pile, et maintenant ?
Ouais ! Vous êtes déjà à mi-chemin du processus de résolution de problèmes.
Il vous suffit de découvrir la cause exacte du crash de l'application en analysant la trace de la pile.
En savoir plus sur les traces de pile dans « Qu'est-ce qu'une trace de pile et comment l'utiliser pour déboguer les erreurs dans mon application ? »
Je n'arrive toujours pas à résoudre mon problème !
Si vous avez trouvé
异常
et la ligne où cela s'est produit et que vous ne savez toujours pas comment y remédier, n'hésitez pas à demander sur StackOverflow.Essayez d'être concis et clair : publiez la trace de la pile et le code pertinent (par exemple, quelques lignes à partir de la ligne qui lance
异常
).