Exécution et débogage de votre application Android sur un périphérique Android à distance
Remonter à Développement d'applications mobiles Android
Sommaire
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'appelerADB 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).
- Un paramètre de menu activant l'option
- 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 :
- Connectez le périphérique Android à la machine via un câble USB.
- Ouvrez un terminal, tel que
cmd.exe
. - Allez au dossier
platform-tools
de votre SDK Android :cd "C:\Utilisateurs\Public\Documents\Embarcadero\Studio\21.0\CatalogRepository\<dossier SDK Android>\platform-tools"
- Exécutez cette commande :
adb tcpip 5555
- Remarque : Remplacer
5555
avec le port sur lequel le périphérique va écouter les connexions entrantes.
- Remarque : Remplacer
- 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'appelerADB 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 dans la fenêtre 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