Déboguer à distance les appareils Android

Kayce basque
Kayce basque
Sofia Emelianova
Sofia Emelianova

Déboguez à distance le contenu en direct sur un appareil Android à partir de votre ordinateur Windows, Mac ou Linux. Ce tutoriel vous explique comment:

  • Configurez votre appareil Android pour le débogage à distance et détectez-le à partir de votre ordinateur de développement.
  • Inspectez et déboguez le contenu en direct sur votre appareil Android à partir de votre ordinateur de développement.
  • Enregistrez le contenu de votre appareil Android sur une instance des outils de développement sur votre ordinateur de développement.

Diagramme de débogage à distance

Étape 1: Découvrez votre appareil Android

Le workflow ci-dessous convient à la plupart des utilisateurs. Pour en savoir plus, consultez la section Dépannage: les outils de développement ne détectent pas l'appareil Android.

  1. Ouvrez l'écran Options pour les développeurs sur votre appareil Android. Consultez Configurer les options pour les développeurs sur l'appareil.
  2. Sélectionnez Activer le débogage USB.
  3. Sur votre ordinateur de développement, ouvrez Chrome.
  4. Accédez à chrome://inspect#devices.
  5. Assurez-vous que l'option Case à cocher. Identifier les appareils USB est activée.

    La case "Découvrir les appareils USB" est cochée.

  6. Connectez votre appareil Android directement à votre ordinateur de développement à l'aide d'un câble USB.

  7. Si vous connectez votre appareil pour la première fois, il apparaît comme "Hors connexion" et en attente d'authentification.

    Appareil hors connexion en attente d'authentification.

    Dans ce cas, acceptez l'invite de session de débogage sur l'écran de votre appareil.

  8. Si le nom du modèle de votre appareil Android s'affiche, cela signifie que les outils de développement ont réussi à établir la connexion avec votre appareil.

    Un appareil connecté avec succès et désigné par un nom de modèle.

  9. Passez à l'étape 2.

Dépannage: les outils de développement ne détectent pas l'appareil Android

Assurez-vous que votre matériel est correctement configuré:

  • Si vous utilisez un hub USB, essayez plutôt de connecter votre appareil Android directement à votre ordinateur de développement.
  • Essayez de débrancher le câble USB entre votre appareil Android et l'ordinateur de développement, puis de le rebrancher. Faites-le lorsque l'écran de votre appareil Android et celui de votre ordinateur de développement sont déverrouillés.
  • Assurez-vous que le câble USB fonctionne. Vous devriez pouvoir inspecter les fichiers de votre appareil Android à partir de votre ordinateur de développement.

Assurez-vous que votre logiciel est correctement configuré:

Si l'invite Autoriser le débogage USB ne s'affiche pas sur votre appareil Android, procédez comme suit:

  • Déconnectez, puis rebranchez le câble USB pendant que les outils de développement sont utilisés sur votre ordinateur de développement et que l'écran d'accueil Android s'affiche. En d'autres termes, il arrive que l'invite ne s'affiche pas lorsque l'écran de votre appareil Android ou de votre ordinateur de développement est verrouillé.
  • Mise à jour des paramètres d'affichage de votre appareil Android et de votre ordinateur de développement afin qu'ils ne se mettent jamais en veille.
  • Je règle le mode USB d'Android sur PTP. Consultez la section Le Galaxy S4 n'affiche pas la boîte de dialogue "Authorize USB debugging" (Autoriser le débogage USB).
  • Sélectionnez Révoquer les autorisations de débogage USB sur l'écran Options pour les développeurs de votre appareil Android pour le réinitialiser.

Si vous trouvez une solution qui n'est pas mentionnée dans cette section ou dans la section Les appareils des outils pour les développeurs Chrome ne détectent pas les appareils lorsqu'ils sont branchés, veuillez ajouter une réponse à cette question sur Stack Overflow ou signaler un problème dans le dépôt developer.chrome.com.

Étape 2: Déboguez le contenu de votre appareil Android depuis votre ordinateur de développement

  1. Ouvrez Chrome sur votre appareil Android.
  2. Dans chrome://inspect/#devices, sur votre ordinateur de développement, vous pouvez voir le nom de modèle de votre appareil Android, suivi de son numéro de série. En dessous, vous pouvez voir la version de Chrome exécutée sur l'appareil, avec le numéro de version entre parenthèses.

    Version de Chrome exécutée sur l'appareil.

  3. Dans la zone de texte Ouvrir l'onglet avec l'URL, saisissez une URL, puis cliquez sur Ouvrir. La page s'ouvre dans un nouvel onglet sur votre appareil Android.

    Onglet distant listé dans une section.

    Chaque onglet Chrome distant a sa propre section dans chrome://inspect/#devices. Vous pouvez interagir avec cet onglet à partir de cette section. Si des applications utilisent WebView, une section s'affiche également pour chacune d'elles. Dans cet exemple, un seul onglet est ouvert.

  4. Cliquez sur Inspecter à côté de l'URL que vous venez d'ouvrir. Une nouvelle instance des outils de développement s'ouvre.

Nouvelle instance DevTools pour l'onglet distant.

La version de Chrome exécutée sur votre appareil Android détermine la version des outils de développement qui s'ouvre sur votre ordinateur de développement. Par conséquent, si votre appareil Android exécute une version très ancienne de Chrome, l'instance des outils de développement peut être très différente de ce à quoi vous êtes habitué.

Autres actions: mettre en pause, sélectionner, actualiser ou fermer un onglet

Sous l'URL se trouve un menu permettant de mettre en pause, de sélectionner, d'actualiser ou de fermer un onglet.

Menu permettant de mettre en pause, de recharger, de sélectionner ou de fermer un onglet.

Inspecter les éléments

Accédez au panneau Elements (Éléments) de votre instance DevTools, puis pointez sur un élément pour le mettre en surbrillance dans la fenêtre d'affichage de votre appareil Android.

Vous pouvez également appuyer sur un élément de l'écran de votre appareil Android pour le sélectionner dans le panneau Éléments. Cliquez sur Sélectionner l'élément Sélectionner un élément dans votre instance des outils de développement, puis appuyez sur l'élément sur l'écran de votre appareil Android. Notez que l'option Sélectionner l'élément est désactivée après le premier appui. Vous devez donc la réactiver chaque fois que vous souhaitez utiliser cette fonctionnalité.

Enregistreur d'écran de votre écran Android sur votre ordinateur de développement

Cliquez sur Activer/Désactiver l'enregistrement d'écran Activer/Désactiver l'enregistrement d'écran pour afficher le contenu de votre appareil Android dans votre instance des outils de développement.

Vous pouvez interagir avec l'enregistrement d'écran de différentes manières:

  • Les clics sont convertis en appuis, ce qui déclenche des événements tactiles corrects sur l'appareil.
  • Les frappes sur votre ordinateur sont envoyées à l'appareil.
  • Pour simuler un geste de pincement, maintenez la touche Maj enfoncée tout en faisant glisser.
  • Pour faire défiler l'écran, utilisez votre pavé tactile ou la molette de la souris, ou faites glisser l'écran avec le pointeur de la souris.

Quelques remarques sur les enregistrements d'écran:

  • Les enregistrements d'écran n'affichent que le contenu de la page. Les parties transparentes de l'enregistrement d'écran représentent les interfaces des appareils, telles que la barre d'adresse Chrome, la barre d'état Android ou le clavier Android.
  • Les enregistrements d'écran ont un impact négatif sur la fréquence d'images. Désactivez l'enregistrement d'écran lorsque vous mesurez les défilements ou les animations pour obtenir une image plus précise des performances de votre page.
  • Si l'écran de votre appareil Android se verrouille, le contenu de l'enregistrement d'écran disparaît. Déverrouillez l'écran de votre appareil Android pour reprendre automatiquement l'enregistrement d'écran.

Déboguer manuellement via Android Debug Bridge (adb)

Dans de rares cas, une autre méthode de débogage à distance peut s'avérer utile. Par exemple, vous pouvez vous connecter directement au protocole des outils pour les développeurs Chrome (CDP, Chrome DevTools Protocol) de votre navigateur Chrome sur Android.

Pour ce faire, vous pouvez utiliser Android Debug Bridge (adb):

  1. Assurez-vous d'activer les Options pour les développeurs et le Débogage USB sur votre appareil Android.
  2. Ouvrez Chrome sur votre appareil Android.
  3. Connectez l'appareil Android à votre ordinateur de développement de l'une des façons suivantes:

  4. Dans la ligne de commande de votre ordinateur de développement, exécutez adb devices -l et vérifiez si votre appareil figure dans la liste.

  5. Transférez le socket CDP de l'appareil vers le port local de votre ordinateur, par exemple 9222. Pour ce faire, exécutez la commande suivante :

    adb forward tcp:9222 localabstract:chrome_devtools_remote
    
  6. Une fois la connexion établie, vérifiez les points suivants:

    • http://localhost:9222/json liste vos cibles page.
    • http://localhost:9222/json/version expose le point de terminaison cible browser, comme indiqué dans la documentation du CPP.
    • chrome://inspect/#devices est renseigné, même si le paramètre Découvrir les appareils USB n'est pas coché.

Pour résoudre les problèmes, consultez les articles suivants: