Mon scénario est le suivant: je fais du télétravail depuis mon domicile et je me connecte à ma machine de travail via Windows Remote Desktop. J'utilise Eclipse comme environnement de développement pour les applications Android sur mon ordinateur de travail.
En utilisant ADB, j'aimerais pouvoir déployer des applications de mon ordinateur de travail vers un appareil sur mon réseau domestique, pour les scénarios où l'émulateur ne rend pas justice à l'application.
J'ai trouvé cet article, qui traite d'un scénario très similaire, à l'exception du déploiement sur un émulateur fonctionnant sur un PC local, au lieu de se déployer sur un appareil local:
http://www.41post.com/5003/programming/Android-adb-remote-emulator-access
J'essaie de suivre les mêmes étapes, mais je trouve comment cibler un appareil local sur mon réseau WiFi domestique et attaché à mon PC domestique local, au lieu de l'émulateur local.
En ce moment, j'ai le PC distant configuré pour essayer de me connecter à mon IP de routeur public sur le port 5585 - mais dans mon routeur, à quelle IP/port dois-je transmettre ceci pour me connecter au périphérique local?
Dans l'exemple utilisant l'émulateur, ils transmettent à l'adresse du PC local où l'émulateur s'exécute et le port 5555, et adb ne s'exécute pas sur le PC local. J'ai configuré mon routeur pour transférer vers l'IP de mon appareil, avec l'appareil sur le WiFi, ainsi que sur l'IP de mon PC local où l'appareil est attaché.
Cependant, dans les deux scénarios, lorsque j'essaie adb connect <routerIP>:5585
sur mon PC distant, cela me donne une erreur unable to connect to <routerIP>:5585:5585
. J'obtiens la même réponse lorsque j'essaie de transmettre/écouter d'autres ports. Je ne reçois aucune erreur de sécurité dans le journal du routeur, il semble donc que la redirection de port fonctionne.
Questions:
J'avais une situation similaire. Je travaille sur un bureau distant pour le développement mais mon appareil Android est connecté à mon ordinateur portable local. Je voulais pouvoir utiliser adb et le plug-in Android Android) Eclipse sur le bureau distant et connectez-vous à l'appareil connecté à mon ordinateur portable. Après avoir recherché sur Internet et n'ayant rien trouvé de vraiment utile, j'ai décidé d'écrire un port forwarder qui ferait l'affaire. Vous pouvez le trouver ici . J'espère que cela sera également utile à d'autres personnes.
Début Android 4.3 vous pouvez:
adb
sur toutes les interfaces. Vous avez deux options: adb
(Je l'ai compilé sur une machine Linux-x64 pour vous et je l'ai mis ici )-a
paramètre: adb -a -P 5037 fork-server server&
adb
sur votre machine distante avec un paramètre supplémentaire, par exemple adb -H <remote_Host> Shell
Vous pouvez résoudre le problème par la redirection de port.
Ma situation nécessitait l'utilisation d'un VM qui se trouve sur un réseau différent, mais dans lequel je rmd (une machine virtuelle Azure). VM et mon ordinateur portable local exécutent tous les deux Windows 10. Premièrement, j'ai dû installer USB Redirector RDP Edition sur ma machine locale (coûte 80 $, mais il pourrait y avoir des alternatives gratuites), puis installez Google Android Pilote USB sur le VM et niversal Adb Driver sur la VM. Je peux maintenant charger une Android Studio App le projet dans Android Studio sur la machine virtuelle, connectez un appareil Android sur mon ordinateur portable et déboguez l'application sur l'appareil.
Il existe probablement une solution plus simple, à condition que l'appareil, la machine locale et distante appartiennent au même réseau. Disons que votre appareil possède une certaine IP sur le réseau et disons que vous décidez d'utiliser votre PORT préféré: eh bien, vous pouvez effectuer les étapes suivantes.
Sur la machine sur laquelle l'appareil est branché, exécutez:
adb devices
adb tcpip PORT
Sur la machine distante, vous devez désactiver "Découvrir les périphériques USB", "Découvrir les cibles réseau" et "Transfert de port", puis exécuter:
adb connect IP:PORT
et vous êtes prêt à déboguer sur une machine distante.
J'espère que cela aidera quelqu'un ...
Cordialement