Outils pour utilisateurs

Outils du site


android:adb:problemes-divers

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentesRévision précédente
Prochaine révision
Révision précédente
android:adb:problemes-divers [2017/03/02 09:42] yoannandroid:adb:problemes-divers [2021/02/01 21:51] (Version actuelle) – modification externe 127.0.0.1
Ligne 2: Ligne 2:
  
 ====== Notes ====== ====== Notes ======
 +
 +**adb**((**A**ndroid **D**ebug **B**ridge)) est un outil en ligne de commande permettant de communiquer avec des périphériques sous Android. Il permet d'effectuer diverses actions telles que installer/deboguer des applications, ouvrir un shell, copier des fichiers ou des APKs.
 +Fonctionne en client/serveur avec 3 composantes:
 +  * Le client envoie les commandes,
 +  * Le daemon adbd, présent sur le périphérique Android cible exécute les commandes.
 +  * Le serveur, qui gère les communications entre le client et les différents daemons adb sur chaque périphérique. Le serveur s’exécute en arrière plan sur la machine de dev.
 +
 +adb est contenu dans le paquetage Android SDK Plateform-Tools. Il est disponible en standalone
 +
 +===== Fonctionnement d'adb =====
 +
 +Lorsque le client est exécuté, il commence par vérifier si un processus serveur existe. Si ce n'est pas le cas, il démarre le processus serveur écoutant sur le port 5037. Tous les clients communiquent leurs commandes au serveur via le port 5037.
 +
 +Le serveur se charge de mettre en service les connexions vers tous les périphériques Android. Il identifie les émulateurs en scannant la plage de ports 5555-5585. Quand le serveur trouve un daemon adbd, il initie la connexion à celui-ci. A noter que chaque émulateur utilise une paire de ports consécutifs. 
 +
 +Une fois que le serveur a initialisé les connexions vers tous les périphériques, adb peut être utilisé pour accéder à ceux-ci. Puisque le serveur gère les connexions vers tous les périphériques et peut recevoir des commandes depuis de multiples clients, il est possible de contrôler n'importe quel périphérique depuis n'importe quel client.
 +
 +===== Utiliser adb sur un périphérique USB =====
 +
 +Pour utiliser adb sur un périphérique physique connecté en USB il faut activer le débogage USB. Cette option est disponible dans les options système sous les options développeur.
 +
 +===== adb via le réseau =====
 +
 +adb communique par défaut via l'USB mais depuis une connexion USB initiale et un paramétrage succinct, il sera possible d'y accéder en TCP/IP.
 +
 +  * Connecter le périphérique a la machine de dev en USB
 +  * Spécifier l'ecoute sur le port tcp 5555 avec la commande:
 +
 +<code bash>
 +adb tcpip 5555
 +</code>
 +
 +  * Deconnecter le périphérique
 +  * Identifier l'adresse IP du périphérique pour s'yn connecter directement avec la commande:
 +
 +<code bash>
 +adb connect device_ip
 +</code>
 +
 +Pour confirmer que la connexion est bien valide:
 +
 +<code bash>
 +adb devices
 +</code>
 +
 +La liste des périphériques attachés doit contenir un seul élément, le périphérique.
  
 ===== versions adb ===== ===== versions adb =====
  
-En cas d'anomalies, vérifier les versions **adb** utilisées côté PC et côté périphérique. A savoir que la compatibilité est cassée pour les versions adb > 1.0.32+En cas d'anomalies, vérifier les versions **adb** utilisées sur la machine de dev et côté périphérique. Noter que la compatibilité est cassée pour les versions adb > 1.0.32
  
 +Pour vérifier la version d'adb:
 <code bash> <code bash>
 $ adb version $ adb version
 </code> </code>
 +
  
 ===== Propriétés périphérique ===== ===== Propriétés périphérique =====
Ligne 24: Ligne 72:
  
   * http://stackoverflow.com/questions/34482042/adb-backup-does-not-work   * http://stackoverflow.com/questions/34482042/adb-backup-does-not-work
 +  * https://developer.android.com/studio/command-line/adb
android/adb/problemes-divers.1488447766.txt.gz · Dernière modification : 2021/02/01 21:51 (modification externe)