800 Stimmen

Wie verwendet man ADB Shell, wenn mehrere Geräte angeschlossen sind? Schlägt fehl mit "Fehler: mehr als ein Gerät und Emulator"

$ adb --help

-s SERIAL  use device with given serial (overrides $ANDROID_SERIAL)

$ adb devices
List of devices attached 
emulator-5554   device
7f1c864e    device

$ adb shell -s 7f1c864e
error: more than one device and emulator

1314voto

janot Punkte 12316

Verwenden Sie die -s Option VOR dem Befehl, um z.B. das Gerät anzugeben:

adb -s 7f1c864e shell

Bei mehreren Emulatoren verwenden Sie die IP und den Port des Prozesses als ID, z. B:

adb -s 192.168.232.2:5555 <command>

Véase Wie erhält man die IP-Adresse des Android-Emulators?

Wenn es aber nur einen einzigen Emulator gibt, versuchen Sie es:

adb -e <command>

Siehe auch http://developer.Android.com/tools/help/adb.html#directingcommands

383voto

Sazzad Hissain Khan Punkte 33230

adb -d shell (oder adb -e shell ).

Dieser Befehl wird Ihnen in den meisten Fällen helfen, wenn Sie zu faul sind, die vollständige ID einzugeben.

De http://developer.Android.com/tools/help/adb.html#commandsummary :

-d - Richten Sie einen adb-Befehl an den einzigen angeschlossenen USB Gerät . Gibt einen Fehler zurück, wenn mehr als ein USB-Gerät angeschlossen ist.

-e - Richten Sie einen adb-Befehl an den einzigen laufenden Emulator . Gibt einen Fehler zurück, wenn mehr als ein Emulator ausgeführt wird.

57voto

monotux Punkte 3458

Eine andere Alternative wäre, die Umgebungsvariable ANDROID_SERIAL auf die entsprechende Seriennummer zu setzen, wobei hier davon ausgegangen wird, dass Sie Windows verwenden:

set ANDROID_SERIAL=7f1c864e
echo %ANDROID_SERIAL%
"7f1c864e"

Dann können Sie adb.exe shell ohne jegliche Probleme.

52voto

pelican Punkte 5766

So installieren Sie eine apk auf einem Ihrer Emulatoren:

Holen Sie sich zunächst die Liste der Geräte:

-> adb devices
List of devices attached
25sdfsfb3801745eg        device
emulator-0954   device

Dann installieren Sie die apk auf Ihrem Emulator mit dem -s Flagge:

-> adb -s "25sdfsfb3801745eg" install "C:\Users\joel.joel\Downloads\release.apk"
Performing Streamed Install
Success

Ps.: Die Reihenfolge ist hier wichtig, also -s <id> muss vorher kommen install Befehl, sonst funktioniert es nicht.

Hoffentlich hilft das jemandem!

47voto

Danny Beckett Punkte 19352

Ich habe diese Frage gefunden, nachdem ich den Fehler "mehr als ein Gerät" gesehen habe, wobei 2 Offline-Telefone angezeigt wurden:

C:\Program Files (x86)\Android\android-sdk\android-tools>adb devices
List of devices attached
SH436WM01785    offline
SH436WM01785    offline
SH436WM01785    sideload

Wenn Sie nur ein Gerät angeschlossen haben, führen Sie die folgenden Befehle aus, um die Offline-Verbindungen loszuwerden:

adb kill-server
adb devices

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X