9 votes

Connectez-vous à l'émulateur à partir d'un autre PC en réseau local

J'ai deux PC. L'un fonctionne sous Ubuntu et l'autre sous Windows. Les deux ont adb installé. J'ai un émulateur sur Ubuntu et je veux m'y connecter à partir de Windows. Je pensais pouvoir utiliser adb forward mais ça ne marche pas. Sur Ubuntu, j'ai configuré

adb forward tcp:8080 tcp:5555

adb tcpip 5555

Puis, dans Windows, j'ai essayé de me connecter :

adb connect user@ubuntu-ip-address:8080

Mais il ne peut pas se connecter.

PS : Je peux me connecter via ssh de Windows à ubuntu et utiliser adb normalement.

6voto

Akasha Points 465

Supposons que vous ayez un PC1 et un PC2. D'après la documentation officielle pour les développeurs Android , adb forward ne sert pas à faire suivre un port TCP du PC1 vers un autre port du PC2. Il s'agit de transférer un port TCP du PC1 vers un port TCP de l'appareil Android.

Pour votre situation, vous pouvez utiliser n'importe quel outil de transfert de port tel que Transfert de port pour Windows .

Vous trouverez ci-dessous un beau tutoriel copié sur hasper.info par Philipp Hasper :

J'utilise souvent l'émulateur Android pour vérifier mes applications avec différentes configurations d'affichage et pour les soumettre à des tests de résistance. Mais le problème est qu'il est vraiment lent sur mon ordinateur portable de développement. J'ai donc installé l'émulateur Android sur mon PC de bureau sous Windows et je m'y suis connecté via mon réseau local. L'avantage majeur est que vous pouvez continuer à utiliser votre machine de développement pendant qu'un "serveur" s'occupe de l'émulation - on pourrait même émuler plusieurs appareils à la fois et continuer à programmer.

L'approche en quelques mots : Transférer le port de l'émulateur pour qu'il soit accessible dans le réseau local. Puis connectez l'ADB à celui-ci.

Sur votre bureau - le "serveur" :

  1. Stocker l'exécutable de Trivial Portforward sur le système du bureau (par exemple directement dans C:\trivial_portforward.exe ).

  2. Créez un dispositif virtuel à émuler (HowTo) et nommez-le "EmulatedAndroid".

  3. Créez un fichier batch :

    <your-android-sdk-path>\tools\emulator -avd EmulatedAndroid &
    echo 'On the development machine: adb kill-server and then: adb connect <desktop-pc-name>:5585'
    C:\trivial_portforward 5585 127.0.0.1 5555
  4. Si vous exécutez ce fichier batch sur votre PC de bureau, il ouvrira l'émulateur avec le périphérique virtuel spécifié.

Maintenant, sur votre ordinateur portable - le "client" :

  1. Maintenant - étant donné que les deux systèmes sont dans le même réseau - vous pouvez vous connecter à l'émulateur depuis votre ordinateur portable en tapant dans un terminal :

    adb kill-server
    adb connect <desktop-pc-name>:5585
  2. Vous pouvez maintenant télécharger des applications, accéder au logcat et exécuter des commandes adb sur votre émulateur distant comme sur tout autre appareil Android. Et tout cela sans altérer les performances de votre poste de travail.

  3. Si vous rencontrez des pertes de communication, augmentez le timeout de l'émulateur dans les paramètres d'eclipse à peut-être 5000 ms (Window Preferences Android DDMS ADB connection time out (ms)).

androidalle.com

AndroidAlle est une communauté de androiders où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X