• 30 heures
  • Moyenne

Ce cours est visible gratuitement en ligne.

course.header.alt.is_video

course.header.alt.is_certifying

J'ai tout compris !

Mis à jour le 21/05/2021

Mettez des points d’arrêt

Connectez-vous ou inscrivez-vous gratuitement pour bénéficier de toutes les fonctionnalités de ce cours !

Introduction

Votre application ne réagit pas correctement, son comportement n'est pas celui attendu. Mettre des traces n'est pas suffisant, il vous faut un mode opératoire plus sophistiqué. Dans ce chapitre, vous allez apprendre à lancer votre application en mode Debug. C'est à dire que vous pourrez suivre son exécution pas à pas, en observant la valeur de toutes les variables qui vous intéressent. Et ainsi trouver ce fameux bug qui vous tient éveillés depuis tout ce temps !

Les points d'arrêt

Un point d'arrêt permet de suspendre l'exécution de votre application à un endroit précis. Vous pouvez ainsi analyser la valeur de chaque variable, pour vous assurer que tout se déroule correctement. Si tout vous semble ok, vous pouvez demander la reprise de l'exécution. Ce mécanisme est bien plus puissant et efficace que les traces, car vous voyez en temps réel où vous en êtes. Et cela vous évite de lire des dizaines, parfois des centaines de lignes de traces.

Vous utiliserez principalement deux types de points d'arrêt :

  • Un breakpoint : au sein d'une méthode ou d'une boucle. À chaque fois que le code correspondant sera sur le point d'être exécuté, votre programme sera suspendu ;

  • Un watchpoint : sur une variable de classe. À chaque fois que cette variable sera modifiée (voire accédée), votre programme sera suspendu.

Positionner les points d'arrêt

Pour positionner un point d'arrêt, vous allez avoir besoin de votre main droite (ou gauche, mais c'est plus rare) et d'une souris. Localisez les lignes de code ou les variables qui vous intéressent, puis cliquez avec le bouton gauche de la souris sur le côté de la fenêtre. Entre le numéro de ligne et le code correspondant. Cela aura pour effet d'ajouter un gros point rouge, comme ceci :

Dans l'image ci-dessus, vous pouvez distinguer les deux types de points d'arrêt :

  1. Celui sur une variable (un watchpoint), avec un petit signe moins dessus ;

  2. Ceux sur une méthode ou une boucle, sans le signe moins.

Avant de lancer l'application MemeTastic, positionnez un point d'arrêt dans la méthode onCreate() du fichier MainActivity.java, par exemple sur la ligne 139.

Lancer l'application en mode Debug

Avant de lancer l'application, assurez-vous que l'application soit compilée en mode Debug. Pour ce faire, cliquez en bas à gauche sur l'onglet Build Variants, puis repérez la colonne Build Variant. Suivant les projets sur lesquels vous serez amenés à travailler, il se peut que vous ayez plusieurs valeurs, par exemple pour compiler une version de l'application différente par client. L'essentiel ici est de sélectionner une valeur qui se termine par Debug, et surtout pas par Release !

Repérez maintenant le bouton de lancement de l'application en mode Debug, vers le milieu de la barre d'outils d'Android Studio (bouton d'insecte avec un logo de lecture vert).

Une fois l'application lancée, ne vous étonnez pas de voir l'écran de votre émulateur (ou de votre téléphone) tout blanc. En effet, votre application est suspendue, sachant que vous avez positionné un point d'arrêt dans la méthode onCreate(). Votre instance d'Android Studio doit ressembler à peu près à cela :

Dans la partie 1, vous voyez le code source de l'application, avec certaines annotations :

  • En italique, la valeur courante des variables ;

  • En bleu, la ligne correspondant à l'endroit précis où le programme est actuellement suspendu.

Dans la partie 2, vous voyez une fenêtre spécifique pour débugger l'application. Sur la partie gauche, vous retrouvez la pile d'exécution que nous avons étudiée dans le chapitre précédent. Sur la partie droite, vous pouvez voir la valeur de différentes variables. Nous allons étudier cela plus en détail dans le chapitre suivant.

Conclusion

Vous savez positionner des points d'arrêt dans votre code et lancer l'application en mode Debug. C'est parfait ! Dans le prochain chapitre, nous allons voir comment observer les variables et avancer pas à pas dans le code. Pour en savoir davantage sur le sujet, n'hésitez pas à consulter la page officielle d'Android Studio.

Exemple de certificat de réussite
Exemple de certificat de réussite