Ich möchte adb
mit einem Android-Emulator verwenden. Kann ich eine USB-Verbindung fälschen oder wie ist das möglich?
Emulator ist verwurzelt , Die USB-Debugging-Option ist aktiviert
Ich habe auch über Apps wie AdbWireless versucht, aber ich bekomme Host hat nicht reagiert (10060) Fehler.
Benötige ich zur Initialisierung immer eine USB-Verbindung? Wie kann adb
mit einem Emulator verbunden werden?
Für MEmu, Droid4X und andere VirtualBox-basierte Emulatoren gibt es einen sehr einfachen Weg:
Sie müssen den 5555-Port an Ihren Host weiterleiten.
In Droid4X öffnen Sie beispielsweise \vms\droid4x\droid4x.vbox
im Texteditor. Es ist nur eine einfache XML-Datei.
In Abschnitt <NAT>
fügen Sie Zeile hinzu:
<Forwarding name="MY_PORT" proto="1" hostip="127.0.0.1" hostport="5565" guestip="10.0.2.15" guestport="5555"/>
Sie können nicht nur den 5565-Port verwenden. Es muss ungleichmäßig sein und im Bereich 5555-5585 oder adb den Emulator nicht automatisch finden.
Speichern Sie die Datei und starten Sie den Emulator. Führen Sie nun adb devices
aus und Sie sehen emulator-5564
in der Liste.
Sie müssen die Datei nur bei vollständig angehaltenem Emulator bearbeiten, andernfalls werden die Änderungen überschrieben. Es ist gemeint halt nicht nur virtuelle Maschine. Sie müssen auch den Serviceprozess stoppen. Normalerweise heißt es VBoxSVC.exe
oder MemuSVC.exe
oder ein anderer *SVC.exe
aus dem Ordner Ihres Emulators.
Für Memu müssen Sie \MEmu\MemuHyperv VMs\MEmu\MEmu.memu
bearbeiten. Alle anderen bleiben gleich.
Ich verwende Memu Version 2.3, und der für die Verbindung mit Android Studio verwendete Port ist 21503. Navigieren Sie zum Plattform-Tools-Verzeichnis von sdk und führen Sie Folgendes in cmd aus. Wenn dies fehlschlägt, versuchen Sie es erneut. Sie können den Samsung USB-Treiber auch installieren und es erneut versuchen.
adb connect localhost:21503
Ich habe durch folgende Schritte gelöst:
Gehen Sie zum Memu-Installationsverzeichnis: (In meinem Fall D:\Programme\Microvirt\MEmu)
Und dann Löschen Sie die Datei adb.exe . Es sollte für Sie funktionieren.
Ok, hier ist eine Schritt-für-Schritt-Anleitung für den MEmu-Emulator.
Lade die adbWireless App herunter und installiere sie in den Emulator (Google "adbwireless xda", ich kann nicht mehr als 2 Links in diesen Beitrag einfügen). Danach müssen Sie eine Netzwerkbrücke einrichten, genau wie hier beschrieben vorgehen und den Computer neu starten: MEmu bridge
Öffnen Sie dann den Emulator, aktivieren Sie das USB-Debugging, führen Sie adbwireless aus, drücken Sie die Taste. Die IP-Adresse sollte ab "192.168" angezeigt werden. Wenn nicht, haben Sie etwas falsch gemacht.
Führen Sie den Befehl Shell mit Administratorberechtigungen aus. Navigieren Sie damit zum Ordner mit adb (in meinem Fall ist es "D:\Programme\Microvirt\MEmuHyperv") oder fügen Sie dies der Systempfadvariable hinzu. Beseitigen Sie die IP-Adresse von adbwireless erneut, und geben Sie in Shell einen Befehl adb connect your_ip
ein. In meinem Fall war dies 192.168.0.101 . Die Shell informiert Sie: connected to 192.168.0.101:5555
. Führen Sie dann adb devices
aus, damit Sie die Liste der verbundenen Geräte sehen sollten. Glückwunsch, Sie sind über adb mit MEmu verbunden.
Es gibt mehr Möglichkeiten, die Verbindung unter this post herzustellen, aber es ist in russisch.
kopieren Sie die Datei adb.exe und alle Dateien, die Sie in ihrem Ordner im Android SDK finden, die von Ihrem Studio verwendet werden, und fügen Sie sie in den Ordner memu ein, um die alte memu adb zu ersetzen. das ist es.
Für Nox App Player ist der Port 62001
.
$ adb connect 127.0.0.1:62001
connected to 127.0.0.1:62001
$ adb devices
List of devices attached
127.0.0.1:62001 device
$ adb Shell
[email protected]:/ #
Wenn es nicht funktioniert, schalten Sie bitte zuerst "USB Debugging" ein:
Der Entwicklermodus wurde aktiviert.
FindEmulatorPort Wird verwendet, um den Android-Emulator-ADB-Port zu finden und automatisch eine Verbindung herzustellen (z. B. Tencent-Mobilassistent, Netease MuMu, BlueStacks, Nox App Player usw.) Herunterladen von: https://gitee.com /tp7309/TTEmulatorPortFinder/repository/archive/master.Zip
python emulator_port.py