"Unfortunately, MyApp has Stopped" en Android , c'est quoi la solution?

Tout développeur Android a rencontré beaucoup de problèmes , parmi lesquels : "Unfortunately, MyApp has Stopped" qui s'affiche dans l’émulateur lors du test de l'application. 
Mais pourquoi cet bug s'affiche ? Comment peut-on l'identifier et le résoudre? 
Des questions qui s'opposent dont on va essayer de les répondre dans cette article.

#1. Introduction
 Dans le développement en générale, on rencontre beaucoup de bugs et erreurs . Cela est du soit par un manque d’expérience dans le développement , soit par une mal écriture de code , soit par une mal-organisation du code , et aussi une faible connaissance de l’environnement et la langage utilisées .
Donc , comme dans tout projet , il faut savoir qu'est ce qu'on est entrain de faire , et s'il y a un problème ,on doit savoir c'est quoi la cause.
En Android , on rencontre beaucoup de problème lors du développement et surtout la fameux bug : "Unfortunately, MyApp has Stopped".
 
#2. C'est quoi ?
 Presque dans tout les forums et les groupes , les débutants et les programmeurs écrivent :
 Mon émulateur affiche un erreur lors de l’exécution de mon application  "Unfortunately, MyApp has Stopped" , comment je peut le résoudre ? 
Cette bug n'est pas la conséquence d'un erreur de programmation unique , elle peut être la cause de plusieurs type exceptions . Donc si on croit que lorsque notre application se crashe et on demande une solution , on ne pas avoir une solution très rapide comme ça , il nous faut de donner plus d'informations.
Toute personne peut avoir un problème lié à son code , et donc il peut le résoudre. Mais comment ?

#3. Solution :Logcat:
Tous les développeurs Android sont un jour confrontés à Logcat, l'afficheur gestionnaire de logs d' Android qui permet d'avoir des retours sous forme de texte lors que l'on programme une application. Cette outil nous permet d'affiche le 'stacktrace' et le journal . Donc on peut identifier les erreurs lorsqu'ils existent.
Pour afficher le logcat dans Eclipse IDE:
   LogCat: Window > Show  View > Other > Android > LogCat  

Logcat Eclipse IDE

Les erreurs sont affichés en couleurs rouge dans le logcat:
Erreurs affichés dans le journal du logcat
Afin de corriger notre problème , il faut bien lire le journal , qui nous permet d'avoir le raison du bug.Voici quelque exemples de bugs affichés :  
java.lang.RuntimeException: Unable to start activity X{com.x.x/com.x.x.MainActivity}
:java.lang.NullPointerException

java.lang.NoClassDefFoundError:com.google.android.gms.R$styleable 

Caused by: java.lang.NullPointerException
 at com.example.disaster.MainActivity.onCreate(MainActivity.java:24) 

Comme vous voyez , parfois il vous indique N° ligne  ou se trouve l’erreur (MainActivity. 24) ainsi le type d'erreur (NullPointerException , etc. )







Pour la résolution de quelques problèmes très répandis :
    • Il faut pas oublier les permissions  dans le AndroidManifest.xml
    • Il faut pas oublier d'ajouter les activités dans le fichier AndroidManifest.xml
    • Il faut bien déclarer les variables avant les utiliser dans le traitement.
    • L'initialisation est importante  pour éviter l'erreur  NullPointerException.
    •  Utiliser l'émulateur genymotion pour tester vos applications (Voir tutoriel pour le configurer)
    • IL faut bien contrôler la visibilité des attributs et des méthodes (public, private etc. )
    • P.O.O (le code doit être bien organiser )
    • Pour bien savoir le déroulement de votre code , utiliser le débogage ou bien intégrer dans le code :
Log.i("Type de message", var);

Vous avez aimé cet article ? alors suivez-nous sur Twitter, Google+ et Facebook, et partagez-le avec les boutons ci-dessous ! Vos commentaires sont les bienvenus.

Enregistrer un commentaire