Verbinden mit einem USB-Android-Gerät in einem Docker-Container über Adb

Ich habe ein Docker-Bild erstellt, das das Android SDK enthält und versuche, mein Android-Handy in einem Container auszusetzen, der dieses Bild ausführt. Also habe ich die –privilegierte Flagge benutzt und die USB-Geräte wie folgt montiert:

$ docker run --privileged -v /dev/bus/usb:/dev/bus/usb -d -P my-android:0.0.1 

Allerdings, wenn ich adb Geräte laufen, zeigt es mir nicht das USB-Gerät

  • Android ADB: Simulieren Sie den letzten App-Tastendruck
  • Android: Gesamte Datenbank löschen
  • Fehler: Adb in SDK kann nicht in Android Studio gefunden werden
  • Listing Berechtigungen der Android-Anwendung über Adb
  • Mit ADB zum Aufnehmen des Bildschirms
  • AdbCommandRejectedException erhält Eigenschaften beim Testen auf Emulator
  •  ubuntu@d56b666be455:~/Android/Sdk/platform-tools$ ./adb devices * daemon not running. starting it now on port 5037 * * daemon started successfully * List of devices attached ubuntu@d56b666be455:~/Android/Sdk/platform-tools$ 

    Lsusb im Inneren des Containers listet das Gerät auf:

     ubuntu@d56b666be455:~$ lsusb ... Bus 002 Device 017: ID 04e8:6866 Samsung Electronics Co., Ltd GT-I9300 Phone [Galaxy S III] (debugging mode) 

    Das Gerät ist jedoch im Host sichtbar:

     ⇒ ./adb devices List of devices attached 4d11abcd65b74045 device 

    Host-Betriebssystem

     $ uname -a Linux ananya 3.16.0-33-generic #44~14.04.1-Ubuntu SMP Fri Mar 13 10:33:29 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux 

    Docker-Version

     $ docker --version Docker version 1.5.0, build a8a31ef 

    Was könnte das Problem sein?

  • Android: benutzerdefinierte Trennzeichen (oder sogar Element) in ListView Depening auf Inhalt des Artikels
  • Eclipse: lass mich nicht nutzen Android SDK, fälschlicherweise behauptet mein ADT ist veraltet
  • Kotlin-Eigenschaft: "Typ-Parameter einer Eigenschaft muss in seinem Empfängertyp verwendet werden"
  • Warum Android Studio entfernt und / oder ändern Layout_margin * Einschränkungen?
  • Richtige Ausrichtung Spalte in Android Tisch Layout
  • TextWatcher für mehr als einen EditText
  • 2 Solutions collect form web for “Verbinden mit einem USB-Android-Gerät in einem Docker-Container über Adb”

    Ich glaube nicht, dass der in dem Gerät laufende Adb-Daemon mit zwei Adb-Servern verbunden werden kann. Versuchen Sie es trennen Sie es von Ihrem Host-Maschine adb und dann verbinden Sie es mit dem Docker's adb.

    Wir versuchen, verschiedene USB-Busse verschiedenen Docker-Containern zuzuordnen, die TeamCity-Clients ausführen.

    Jeder Container benötigt ANDROID_ADB_SERVER_PORT Einstellung zu einem anderen Port (weil wir keine segregierte Vernetzung verwenden).

    Der Host-Rechner kann nicht adbd laufen, da nur ein Adbd zu einem beliebigen Zeitpunkt mit einem Telefon sprechen kann.

    Jeder Container erhält eines der / dev / bus / usb / xxx Verzeichnisse, so dass wir Telefone in bestimmte Container stecken können.

    Wir müssen das Verzeichnis / dev / bus / usb / xxx alle paar Sekunden synchronisieren, um Hot-Plugging und Neustarts zu ermöglichen – nur eine Shell-Schleife auf dem Host, der tar cf devxxx.tar / dev / bus / usb / xxx, docker läuft Cp, um es zu übertragen, dann Docker ausführen, um im Inneren des Containers / tmp, diff zu erkennen, um Knoten zu löschen, und mv-n, um neue Knoten zu verschieben.


    In der Tat, weil wir auf Linux laufen, können wir wohl nur udev scripts einrichten, pro http://ubuntuforums.org/archive/index.php/t-502864.html

    Das Android ist ein Google Android Fan-Website, Alles ├╝ber Android Phones, Android Wear, Android Dev und Android Spiele Apps und so weiter.