J'essaie de déboguer une application sur un Motorola Droid , mais j'ai du mal à me connecter à l'appareil via USB. Mon serveur de développement est une machine virtuelle Windows 7 64 bits fonctionnant en Hyper-V , et je ne peux donc pas me connecter directement via USB sur l'invité ou sur l'hôte.
J'ai installé quelques solutions USB-sur-TCP différentes, mais la connexion semble avoir des problèmes puisque le moniteur ADB signale «devicemonitor n'a pas pu démarrer la surveillance» à plusieurs reprises. Existe-t-il un moyen de se connecter directement du client sur la machine de développement au démon sur l'appareil en utilisant le réseau au lieu de la connexion USB ou éventuellement d'autres options viables?
adb tcpip 5555
. Déconnectez l'USB, affichez l'IP du téléphoneSettings > About Phone > Status
. Maintenantadb connect 192.168.x.x
et c'est tout. Aucun outil, aucun logiciel. Fonctionne juste.Réponses:
Processus manuel
Depuis votre appareil, s'il est enraciné
Selon un article sur les développeurs xda , vous pouvez activer ADB sur Wi-Fi depuis l'appareil avec les commandes:
Et vous pouvez le désactiver et retourner ADB à l'écoute sur USB avec
Depuis un ordinateur, si vous avez déjà un accès USB (pas de root requis)
Il est encore plus facile de passer à l'utilisation du Wi-Fi, si vous avez déjà un port USB. À partir d'une ligne de commande sur l'ordinateur auquel le périphérique est connecté via USB, exécutez les commandes
Assurez-vous de remplacer
192.168.0.101
par l'adresse IP réellement attribuée à votre appareil. Une fois que vous avez terminé, vous pouvez vous déconnecter de la session adb tcp en exécutant:Vous pouvez trouver l'adresse IP d'une tablette de deux manières:
Découverte IP manuelle:
Allez dans les paramètres WiFi d'Android, cliquez sur le bouton de menu dans la barre d'action (les points de suspension verticaux), appuyez sur Avancé et voyez l'adresse IP en bas de l'écran.
Utilisez ADB pour découvrir IP:
Exécutez la commande suivante via adb:
Pour dire au démon ADB de revenir à l'écoute via USB
Des applications pour automatiser le processus
Il existe également plusieurs applications sur Google Play qui automatisent ce processus. Une recherche rapide suggère adbWireless , WiFi ADB et ADB WiFi . Tous ces éléments nécessitent un accès root, mais adbWireless nécessite moins d'autorisations.
la source
adb tcipip 5555
etadb connect ...
il n'y a pas de racine nécessaire.adb tcpip <port>
nécessite toujours que l'une desro.kernel.qemu
propriétés soit définie (s'exécutant en mode émulateur),ro.secure
soit 0 (c'est-à-dire un périphérique enraciné), ouro.debuggable
etservice.adb.root
définie sur 1.adbd
n'ouvrira tout simplement pas une connexion TCP / IP si aucune des conditions ci-dessus n'est remplie. Voir les parties netmite.com/android/mydroid/system/core/adb/adb.cadb_main
sur lasecure
variable.adbd
sur mon 2.3.7 sans racine Android n'entre pas du tout en mode TCP / IP.C'est vraiment simple si votre téléphone est enraciné.
Téléchargez un émulateur de terminal depuis Google Play (il y en a beaucoup qui sont gratuits). Assurez-vous que votre appareil Android est connecté à votre Wi-Fi et obtenez l' adresse IP Wi-Fi . Ouvrez le programme du terminal et saisissez:
Allez maintenant sur votre ordinateur (en supposant que vous utilisez Windows) et créez un raccourci sur le bureau pour "cmd.exe" (sans les guillemets).
Faites un clic droit sur le raccourci cmd et choisissez
"Run as Administrator"
Accédez à votre
android-sdk-windows\tools
dossierType:
adb devrait maintenant dire que vous êtes connecté.
Remarque: si vous êtes trop rapide pour donner la commande connect, cela peut échouer. Essayez donc au moins deux fois cinq secondes d'intervalle avant de dire que cela ne fonctionne pas.
la source
adb tcpip 5555
puis l'autre personne a été exécutéeadb connect myIP:5555
sur son PC. Il pouvait installer une application sur mon téléphone mais il ne pouvait pas la déboguer à distance. Est-il possible de déboguer à distance? Sur mon téléphone, il y a eu une boîte de dialoguewaiting for debugger
pour toujours.Connectez l'appareil via USB et assurez-vous que le débogage fonctionne, puis exécutez:
Déconnectez l'USB et procédez au débogage sans fil.
Lorsque vous avez terminé et que vous souhaitez revenir au débogage USB, exécutez:
Pour trouver l'adresse IP de votre appareil, accédez à
Settings > Wi-Fi > Advanced > IP Address
sur votre appareil ou exécutezadb shell netcfg
.Aucune racine requise. Un seul appareil peut être débogué à la fois.
Voir cet article XDA .
La
adb
commande se trouve dans leplatform-tools
dossier du SDK Android.la source
adb tcpip 5555 && adb connect <DEVICE_IP_ADDRESS>:5555
Supposons que vous avez enregistré le chemin adb dans le chemin de votre environnement Windows
Activer le mode de débogage dans Android
Connectez-vous au PC via USB
Ouvrez le type d'invite de commande:
adb tcpip 5555
Déconnectez votre tablette ou smartphone du PC
Ouvrez le type d'invite de commande:
adb connect IPADDRESS
(IPADDRESS est l'adresse DHCP / IP de votre tablette ou smartphone, que vous pouvez trouver par Wi-Fi -> réseau actuellement connecté)Maintenant, dans l'invite de commande, vous devriez voir le résultat comme: connecté à xxx.xxx.xxx.xxx:5555
la source
De
adb --help
:C'est d'ailleurs une option de ligne de commande.
Vous devriez essayer de connecter le téléphone à votre Wi-Fi, puis obtenir son adresse IP à partir de votre routeur. Cela ne fonctionnera pas sur le réseau cellulaire.
Le port est 5554.
la source
adb tcpip port
car la valeur par défaut est le débogage via USB. Après ce dernier, vous pouvez vous connecterconnect host:port
et cela devrait fonctionnerPour les utilisateurs de Windows:
Étape 1:
Vous devez activer les options de développeur sur votre téléphone Android.
Vous pouvez activer les options de développeur de cette manière.
• Ouvrez Paramètres> À propos> Informations sur le logiciel> Plus.
• Appuyez ensuite sur «Build number» sept fois pour activer les options Developer.
• Revenez au menu Paramètres et vous pourrez maintenant y voir les «Options du développeur».
• Appuyez dessus et activez le débogage USB dans le menu de l'écran suivant.
Étape 2:
Ouvrez cmd et tapez adb.
si vous trouvez que la commande adb n'est pas valide, vous devez ajouter un chemin d'accès à la variable d'environnement.
• Allez d'abord dans votre dossier SDK installé
Suivez ce chemin et ce chemin est juste pour un exemple. D: \ softwares \ Development \ Andoird \ SDK \ sdk \ platform-tools \; D: \ logiciels \ Développement \ Andoird \ SDK \ sdk \ tools;
• Maintenant, recherchez sur les paramètres avancés du système Windows
•
Ouvrez la variable d'environnement.
puis ouvrez le chemin et collez le chemin suivant, voici un exemple.
Votre chemin SDK est différent du mien, veuillez utiliser le vôtre. D: \ softwares \ Development \ Andoird \ SDK \ sdk \ platform-tools \;
D: \ logiciels \ Développement \ Andoird \ SDK \ sdk \ tools;
Étape 3:
Ouvrez cmd et tapez adb. si vous voyez toujours que la commande adb n'est pas valide, votre chemin d'accès n'est pas défini correctement, suivez les étapes ci-dessus.
Vous pouvez maintenant connecter votre téléphone Android au PC.
Ouvrez cmd et tapez adb devices et vous pouvez voir votre appareil. Trouvez votre adresse IP de téléphone.
Type: - adb tcpip 5555
Obtenez l'adresse IP de votre téléphone
Maintenant,
Maintenant, lancez votre projet Android et si vous ne voyez pas votre appareil, tapez à nouveau adb connect l'adresse IP de votre téléphone
Pour les utilisateurs Linux et macOS :
Étape 1: ouvrez le terminal et installez adb en utilisant
sudo apt-get install android-tools-adb android-tools-fastboot
Connectez votre téléphone via un câble USB au PC. Tapez la commande suivante dans le terminal
En utilisant adb, connectez l'adresse IP de votre téléphone Android.
Retirez votre téléphone.
la source
Depuis un ordinateur sur un appareil non rooté
(Notez que cela peut également être fait en utilisant un périphérique enraciné, mais vous pouvez utiliser un shell sur un périphérique enraciné qui ne nécessite pas de connexion USB)
Tout d'abord, ouvrez l'invite de commande (CMD). Si vous utilisez Android Studio ou IntelliJ, vous pouvez utiliser une console.
Si vous avez ajouté adb au chemin, vous pouvez ignorer la partie cd.
Si possible, ouvrez l'emplacement du SDK, faites un clic droit et appuyez sur "Démarrer l'invite de commande ici". Tous n'ont pas cette option, vous devez donc également exécuter ces (/ ces) commandes:
Windows: changez le lecteur (le cas échéant)
Et accédez aux outils sdk et plateforme. Remplacez ce chemin par votre emplacement SDK:
Vous avez maintenant accès au pont de débogage Android.
Avec l'appareil connecté à l'ordinateur, procédez comme suit:
Où se
<port>
trouve le port auquel vous souhaitez vous connecter (par défaut5555
) et<ip>
l'adresse IP de l'appareil auquel vous souhaitez vous connecter.Veuillez noter:
5555
est le port par défaut et écrire simplement l'adresse IP le connecte. Si vous utilisez un port personnalisé, vous pouvez au moins améliorer un peu la sécurité. Le débogage USB via Wi-Fi peut être utilisé abusivement, mais uniquement si l'appareil est connecté à l'ordinateur qui souhaite abuser de l'appareil. L'utilisation d'un port autre que celui par défaut rend au moins un peu plus difficile la connexion.Si vous utilisez un port personnalisé, assurez-vous de l'ajouter après l'IP. L'écriture sans port se connecte
5555
et si vous ne l'avez pas utilisé, la connexion échouera.Vous pouvez trouver l'adresse IP d'un périphérique de deux manières:
Selon votre appareil, les noms exacts peuvent varier. Ouvrez les paramètres et accédez à À propos de l'appareil -> État -> Adresse IP
Utilisez ADB pour obtenir l'IP
Depuis la console, faites:
Et une fois la connexion terminée, vous pouvez déconnecter l'appareil de votre ordinateur en procédant comme suit:
Ou pas d'IP pour déconnecter tous les appareils. Si vous avez utilisé un port personnalisé, vous devez spécifier de quel port vous déconnecter . La valeur par défaut est également 5555.
Pour désactiver le port (si c'est quelque chose que vous voulez faire), faites cette commande avec le périphérique connecté:
Ou vous pouvez redémarrer l'appareil pour supprimer la connexion tcpip
Depuis un ordinateur sur un appareil rooté
Tout d'abord, vous devez avoir accès au shell. Vous connectez l'appareil à l'aide d'un câble USB et utilisez
adb shell
ou téléchargez une application à partir de Google Play, FDroid ou d'une autre source.Ensuite, vous faites:
Et pour connecter l'appareil, vous faites comme dans la version non rootée en faisant
adb connect <ip>:<port>
.Et si vous souhaitez désactiver le port et revenir à l'écoute USB:
Vous pouvez également utiliser un plugin Android Studio pour le faire pour vous (ne vous souvenez pas du nom pour le moment), et pour les utilisateurs rootés, il y a également la possibilité de télécharger une application Android pour configurer la connexion téléphonique (adb connect est probablement toujours requis ).
Certains téléphones ont un paramètre dans les options de développement (cela s'applique à certains téléphones non rootés, mais probablement aussi à certains téléphones rootés) qui permet de basculer ADB sur Wi-Fi à partir de l'appareil lui-même sans racine ou connexion d'ordinateur pour le démarrer. Bien qu'il y ait peu de téléphones qui
la source
adb shell ip -f inet addr show wlan0
L'adresse IP et la prise en charge du port doivent-elles être remplacées quelque part?Je avais besoin de deux USB et TCPIP travaillant pour la BAD (ne demandez pas), donc je l'ai fait ce qui suit ( à l' aide d' autres directions ont posté de xda-developers)
En utilisant
adb shell
:la source
/sbin/adbd
. Cela peut varier selon le téléphone. Bien sûr, vous devez être rooté ... Si vous n'êtes pas rooté, vous ne pourrez pas accéder à / sbin.Pour connecter votre tablette à l'aide du port TCP. Assurez-vous que votre système et votre appareil sont connectés au même réseau.
adb tcpip 5555
adb connect 192.168.1.2
ceci est l'adresse IP de votre appareilConnecté à l'aide de la redirection de port Essayez de faire une redirection de port,
adb forward tcp:
<PC port>
tcp:<device port>
comme:
Si vous obtenez un message d' erreur: périphérique introuvable, connectez un périphérique USB au système, puis suivez la même procédure.
pour un appareil enraciné
la source
su
abord pour obtenir une console rootée.Je ne sais pas comment connecter l'appareil sans aucune connexion USB, mais si vous parvenez à le connecter peut-être à un autre ordinateur, vous pouvez basculer l'adbd en mode TCP en émettant
depuis un terminal et connectez-vous à votre appareil via wifi depuis n'importe quel PC du réseau en:
Il est peut-être également possible de passer en mode TCP à partir d'un terminal sur l'appareil.
la source
Vous devez d'abord connecter votre appareil via USB
Connectez ensuite votre appareil au WIFI et obtenez l'adresse IP. Tout en vous connectant via USB, saisissez ceci en ligne de commande ou via Android Studio Terminal
Vous verrez ces messages:
Maintenant, retirez le câble USB et vous verrez toujours votre logcat comme normal
Terminé. Prendre plaisir
la source
Si vous souhaitez connecter facilement votre appareil pour exécuter, déboguer ou déployer vos applications Android via WiFi, vous pouvez utiliser un plugin IntelliJ open source que j'ai développé. Voici le code et ici le plugin prêt à être utilisé.
L'utilisation est assez simple. Voici un gif:
la source
Comme l'a dit Brian:
Il vous suffit d'accéder au shell Android et de taper ces commandes ...
Une autre solution (plus simple) est sur le marché: adbWireless, elle configurera automatiquement votre téléphone.
La racine est requise! pour les deux...
la source
Bizarre, mais cela ne fonctionne que pour moi si j'ai le câble USB connecté, alors je peux débrancher la clé USB et y aller avec tout le reste adb.
et la même chose en revenant à l'USB,
ne fonctionnera que si USB est connecté.
Peu importe si j'émets le
ou
puis arrêtez et démarrez adbd, j'ai toujours besoin du câble USB ou cela ne fonctionne pas.
Donc, si mon ADB sur USB ne fonctionnait pas, je parie que je ne serais pas en mesure d'activer ADB sur WiFi non plus.
la source
Pour basculer entre les modes TCP et USB avec une seule commande, vous pouvez l'ajouter à
/init.rc
:Et maintenant, vous pouvez utiliser la propriété
service.adb.tcp.enable
pour activer ou désactiver l'écoute sur le port 5555. Exécuteznetstat
pour vérifier s'il écoute. Comme vous pouvez le voir, il se déclenchera également si vous souhaitez modifierservice.adb.tcp.port
manuellement.la source
Fonction Bash util:
la source
ÉTAPE 1.
Assurez-vous que votre ordinateur hôte adb et votre appareil Android sont sur le même réseau Wifi.
ÉTAPE 2.
Connectez l'appareil Android à l'ordinateur à l'aide de votre câble USB. Dès que vous faites cela, votre ordinateur hôte détectera votre appareil et adb commencera à fonctionner en mode USB sur l'ordinateur. Vous pouvez vérifier les périphériques connectés avec tout en vous
adb devices
assurant que adb s'exécute en mode USB en exécutantadb usb
.ÉTAPE 3.
Redémarrez adb en mode tcpip avec cette commande:
ÉTAPE 4.
Découvrez l'adresse IP de l'appareil Android. Il existe plusieurs façons de procéder:
$ adb shell netcfg
.Maintenant que vous connaissez l'adresse IP de votre appareil, connectez-y votre hôte adb.
ÉTAPE 5.
Retirez le câble USB et vous devriez être connecté à votre appareil. Si vous ne le voyez pas,
adb devices
reconnectez-vous simplement à l'aide de la commande de l'étape précédente:Soit vous êtes prêt à partir maintenant, soit vous devrez tuer votre serveur adb en exécutant
adb kill-server
et recommencer toutes les étapes.J'espère que cela pourra aider!
Référence:
la source
Ce sont les étapes que j'ai suivies et cela a fonctionné pour moi,
la source
Vous pouvez également utiliser la redirection de port local SSH. Mais cela implique toujours un câble USB. Connectez votre téléphone via USB à un ordinateur (hôte) avec un sshd en cours d'exécution. Sur un PC distant (invité), démarrez un client SSH capable de rediriger les ports / de tunnelliser. Exemple:
J'utilise cette construction pour connecter mon appareil à une machine virtuelle. Eltima USB to Ethernet n'était pas assez stable (timeouts pendant le débogage).
Le tunneling SSH fonctionne gratuitement et est plus fiable.
la source
Je trouve les autres réponses déroutantes. AdbWireless est beaucoup plus simple à utiliser:
http://ppareit.github.com/AdbConnect/
Installez simplement une application sur votre téléphone pour basculer le débogage sur le wifi, installez un plug-in Eclipse et vous avez terminé.
la source
J'ai rassemblé un fichier batch pour l'activation automatique et la connexion d'ADB via TCP à un appareil connecté via USB. Avec lui, vous n'avez pas à mettre l'IP manuellement.
la source
Voici une extension de la réponse de Brian en utilisant Bluetooth:
Sous Linux, utilisez Blueman pour partager Internet PC avec votre appareil via Bluetooth:
Utilisez le réseau Bluetooth pour les commandes ADB:
Une fois terminé pour revenir en mode USB:
Remarque: Bluetooth 3.0 et 4.0 peuvent aller jusqu'à 24 Mbit / s .
la source
Pas :
su
- Pour passer en super utilisateur.setprop service.adb.tcp.port 5555
- Pour spécifier le port TCP - 5555 est le numéro de port icistop adbd
- Pour arrêter le service adbd.start adbd
- Pour démarrer le service adbd.cela fonctionne parfaitement avec
ssh
mon PC WindowsJ'essaie de le faire sur le démarrage de mon mobile cyanogène ou de le lancer avec plink. Avec plink, je ne peux pas lancer le shell avec su right ... la commande sudo ou su ne fonctionne pas. Au démarrage, je ne sais pas comment cela fonctionne! Mon programme shell fonctionne à partir de ssh avec
su -c "sh /storage/sdcard1/start_adb.sh"
les 3 dernières commandes (sans su -)Merci
la source
Une remarque supplémentaire (appris à la dure): Vous ne devriez pas avoir la connexion VPN de votre entreprise active en même temps ...
la source
Vous devez faire les choses suivantes:
la source
Il existe deux façons de connecter votre appareil Android avec ADB sur TCP?
Première voie
Suivez ces étapes
SORTIE de la commande ci-dessus
Avec l'aide de la commande ci-dessus, vous trouverez l'adresse IP de l'appareil connecté
La commande ci-dessus redémarrera ce port TCP: 5555
Deuxième voie
Vous pouvez utiliser le plug-in Android Studio
Android device with ADB
Android WiFi ADB - Plugin IntelliJ / Android Studio
Veuillez consulter cet article pour plus d'informations
Connectez un appareil Android avec Wifi dans Android Studio
la source
Je suis struct au même problème mais un simple hack
adb reverse tcp:<PORT> tcp:<PORT>
fonctionné pour moi. Il permet au système d'accepter les requêtes TCP.Merci pour la lecture
la source
Utilisez l'application adbwireless pour activer le téléphone, puis utilisez adb connect depuis la machine Windows pour lui parler. L'application adbwireless sur le téléphone vous indique comment vous y connecter, en donnant l'adresse IP et tout le reste.
L'alternative beaucoup moins amusante consiste à se connecter via USB, à dire au téléphone d'utiliser TCPIP via adb tcpip 5555, puis à déconnecter USB, puis à utiliser adb connect. C'est beaucoup plus difficile car de cette façon, vous devez déterminer vous-même l'adresse IP du téléphone (adbwireless vous indique l'IP), vous devez vous connecter via USB et vous devez exécuter adb tcpip (adbwireless s'en charge également).
Alors: installez adbwireless sur votre téléphone. Utilise le. C'est possible, je le fais régulièrement sous Linux et sous Windows.
la source
Sur mon système, cela se passait comme ceci:
Sur mon appareil Android dans mon shell Linux, un simple "ifconfig" ne m'a pas donné mon adresse IP. J'ai dû taper:
ifconfig eth0
-ou-
netcfg
pour obtenir mon adresse IP. (Je savais que eth0 était configuré parce que je l'ai vu dans mon dmesg.) Ensuite, j'ai fait:
setprop service.adb.tcp.port -1
arrêter adbd
commencer adbd
Puis sur ma box Win7 (celle qui exécute Eclipse 3.7.1). J'ai ouvert une invite de commande pour
\ android-sdk \ platform-tools>
sans exécuter en tant qu'administrateur. Ensuite, j'ai fait
adb connect 12.345.678.90
Je n'ai jamais mis de port. Si je faisais un
adb tcpip 5555
il a dit qu'il ne pouvait pas trouver l'appareil, puis rien ne figurait dans ma liste "appareils adb". C'est à dire que cela ne fonctionne que si je ne fais pas la commande tcpip ci-dessus.
Je peux faire un "shell adb" et jouer avec mon appareil Android. Mais mon appareil Android n'apparaît pas dans l'onglet Run-> Run Configurations-> Target pour le moment. D'un autre côté, si je garde l'onglet Cible réglé sur automatique. Ensuite, lorsque j'exécute mon application via Exécuter-> Exécuter, elle s'exécute sur mon appareil Android même si mon appareil Android n'est même pas répertorié comme l'une de mes cibles.
la source
Je l'ai fait fonctionner. N'a pas utilisé de câble USB.
Exécuter. Cela définira ip et port; Puis à dos
Lié.
la source