Android Debug Bridge (adb)

ADB est un outil important pour les développeurs, car il vous permet d’interagir aussi bien avec les émulateurs Android qu’avec les appareils connectés. La documentation ADB présente de nombreuses fonctionnalités, mais voici quelques commandes utiles :

  • adb kill-server et adb start-server – arrête et démarre le service ADB si besoin
  • adb devices – liste les appareils disponibles (notamment les émulateurs et les téléphones ou tablettes connectés à votre ordinateur)
  • adb install – installe les fichiers APK
  • adb shell – exécute les commandes sur le système Android, par exemple :
    • adb shell pm list packages – liste tous les packages installés
    • adb shell pm path com.example.someapp – obtient le chemin du système de fichiers du package spécifié
  • adb pull – extrait les fichiers de l’émulateur ou de l’appareil

Simuler la répartition de l’application

ADB peut aussi être utilisé pour simuler des commandes d’entrée, telles que l’automatisation de la répartition d’une application sur Surface Duo. Ces captures d’écran illustrent le processus de répartition en prenant la poignée en bas de la fenêtre et en la faisant glisser vers la charnière jusqu’à ce que l’indicateur de répartition couvre les deux écrans :

Trois étapes de la répartition automatique d’une application avec les commandes ADB

Vous pouvez simuler ce geste avec ADB, à l’aide de la commande suivante :

adb shell input touchscreen swipe 675 1780 1350 1500 3000

Les quatre premières valeurs sont les coordonnées de début et de fin du geste de glissement, tandis que la valeur finale est le temps écoulé (millisecondes). Le temps est important parce que si vous faites glisser trop vite, l’application est « propulsée » dans l’autre écran au lieu d’être répartie sur les deux. Un temps de trois secondes fonctionne bien.

Vous pouvez aussi simuler la répartition de l’application et d’autres gestes lors des tests de l’interface utilisateur.

Déboguer avec les commandes ADB

Suivez ces étapes pour déboguer avec les commandes ADB :

  1. Rechercher l’ID de votre appareil d’émulateur

    Exécutez C:\>adb devices.

    emulator-5554   device
    
  2. Recherchez le package que vous voulez déboguer.

    Exécutez adb shell pm list packages.

    package:com.android.managedprovisioning
    package:com.android.smspush
    package:com.android.wallpaper.livepicker
    package:com.android.storagemanager
    package:com.android.bookmarkprovider
    package:com.android.settings
    package:com.android.calculator2
    package:com.android.vpndialogs
    package:com.android.email
    package:com.android.music
    
  3. Définissez l’application à déboguer au démarrage (notez le -w)

    Exécutez adb shell am set-debug-app -w com.microsoft.device.display.samples.masterdetail.

  4. Démarrez l’application dans l’émulateur.

    Un message contextuel s’affiche, indiquant que l’application attend qu’un débogage soit attaché. Vous devez réexécuter le débogage défini à chaque fois (ou utiliser l’option --persistent).

  5. Se connecter au débogueur Android Studio

    Dans les options de menu Android Studio, sélectionnez Exécuter - Attacher le débogueur. L’émulateur et le processus doivent être listés.

  6. Pointez sur le code source et définissez des points d’arrêt.