Exécution et débogage de votre application Android sur un périphérique Android à distance

De RAD Studio
Aller à : navigation, rechercher

Remonter à Développement d'applications mobiles Android


Cette page explique comment déboguer une application Android sur un périphérique Android connecté en réseau. Cette méthode est également connue en tant que ADB over network ou TCP/IP debugging. Vous devez avoir lu Développement d'applications mobiles Android et compris les étapes nécessaires pour configurer et utiliser un périphérique Android pour le développement.

Les avantages de cette méthode sont notamment les suivants :

  • Connexion sans fil au périphérique Android, aucun câble USB nécessaire (lorsque les périphériques ne sont pas associés à une racine, le câble USB est nécessaire pour changer le mode de débogage).
  • Simplifie le partage d'un périphérique Android pour le débogage entre développeurs.
Remarque : Toutes les commandes ADB sur cette page fonctionnent si vous avez seulement un périphérique Android connecté à votre machine. Si vous avez plus d'un périphérique Android connecté, voir Android Help: Directing Commands (EN) pour connaître la méthode appropriée pour l'exécution des commandes ADB.
Remarque : Les applications Android continuent à s'exécuter en arrière-plan, même si elles ne sont pas visibles pour les utilisateurs. Comme l'application continue à s'exécuter, on peut avoir l'impression que le débogueur est en panne alors qu'il s'est simplement déconnecté de l'application.

Activation du débogage TCP/IP sur le périphérique Android

Exigences

  • Le périphérique Android doit être connecté à un réseau sans fil identique à (ou faisant partie de) celui auquel votre machine de développement est connectée.

Si votre périphérique Android n'est pas associé à une racine, vous avez également besoin de ce qui suit :

  • Une machine sur laquelle est installé le SDK Android.
  • Un câble USB.
  • Le périphérique Android doit être reconnu en tant que périphérique ADB sur la machine.

Si votre périphérique Android est associé à une racine, vous avez besoin de ce qui suit :

  • L'une des conditions suivantes :
    • Un paramètre de menu activant l'option TCP/IP debugging mode (disponible sur certaines ROM). Il se trouve généralement dans le menu des réglages du développeur, et il peut s'appeler ADB over network).
    • Une application émulateur de terminal installée sur votre périphérique (comme Terminal Emulator for Android).
    • Une application qui active l'option TCP/IP debugging mode (par exemple ADB over network).
Remarque : Votre machine de développement peut être connectée au réseau sans fil ou via un câble Ethernet, tant qu'elle se trouve sur le même réseau que le périphérique Android.

Etapes

Si votre périphérique Android n'est pas associé à une racine :

  1. Connectez le périphérique Android à la machine via un câble USB.
  2. Ouvrez un terminal, tel que cmd.exe.
  3. Allez au dossier platform-tools de votre SDK Android :
    cd "C:\Utilisateurs\Public\Documents\Embarcadero\Studio\23.0\CatalogRepository\<dossier SDK Android>\platform-tools"
  4. Exécutez cette commande :
    adb tcpip 5555
    Remarque : Remplacer 5555 avec le port sur lequel le périphérique va écouter les connexions entrantes.
  5. Si vous le souhaitez, vous pouvez déconnecter le périphérique Android de la machine après avoir exécuté cette commande.

Si votre périphérique Android est associé à une racine, effectuez l'une des actions suivantes pour activer le mode de débogage TCP/IP :

  • Activez le TCP/IP debugging mode dans le menu des réglages du développeur sur votre périphérique (cette option peut s'appeler ADB over network).
  • Exécutez le code suivant dans un émulateur de terminal :
    su
    setprop service.adb.tcp.port 5555
    stop adbd
    start adbd
  • Utilisez une application qui active le débogage TCP/IP.

Connexion au périphérique Android

Pour connecter le périphérique Android à partir de votre machine de développement, exécutez la commande suivante dans le répertoire "platform-tools" de votre installation du SDK Android : adb connect <IPAddress>:<portNumber> (par exemple : adb connect 192.168.1.110:5555). <IPAddress> est l'adresse IP de votre périphérique. Voici plusieurs moyens de trouver l'adresse IP de votre périphérique :

  • Accédez au menu de votre périphérique (généralement : Settings > Wi-Fi > Advanced Wi-Fi, mais cela peut varier en fonction de la version du système d'exploitation de votre périphérique ou du fabricant).
  • Exécutez la commande suivante dans le répertoire "platform-tools" de votre installation du SDK Android : adb shell netcfg. Pour cela, votre périphérique doit être connecté via un câble USB.
  • Trouvez l'adresse IP de votre périphérique dans la page des paramètres de votre routeur réseau.

Si la connexion réussit, la fenêtre de commande affiche : "connected to <IPAddress>:<portNumber>". Vous pouvez utiliser la commande adb devices pour afficher une liste des périphériques ADB connectés. Le périphérique Android connecté doit maintenant apparaître sur le Gestionnaire de projets.

Déconnexion à partir d'un périphérique Android à distance

Si vous souhaitez vous déconnecter du périphérique Android, réinitialisez simplement le mode débogage sur le périphérique. Autrement, vous pouvez exécuter le code suivant sur la machine de développement : adb disconnect <IPAddress>:<portNumber>.

Réinitialisation du mode débogage sur le périphérique Android

Sur un périphérique Android, le mode débogage est réinitialisé chaque fois que le périphérique est redémarré. Si vous souhaitez réinitialiser le mode débogage sans redémarrer le périphérique, procédez de l'une des manières suivantes :

  • Exécutez la commande adb usb sur la machine distante à laquelle le périphérique Android est connecté via un câble USB.
  • Exécutez le code suivant dans un émulateur de terminal sur le périphérique :
  • style="list-style: none; display: inline"
    
    su
    setprop service.adb.tcp.port -1
    stop adbd
    start adbd
    


Voir aussi