DeviceManager
public
class
DeviceManager
extends Object
implements
IDeviceManager
java.lang.Object | |
↳ | com.android.tradefed.device.DeviceManager |
Zusammenfassung
Verschachtelte Klassen | |
---|---|
class |
DeviceManager.FastbootDevice
Darstellung eines Geräts im Schnellstartmodus |
Felder | |
---|---|
public
static
final
String |
UNKNOWN_DISPLAY_STRING
Anzeigestring für unbekannte Properties |
protected
DeviceMonitorMultiplexer |
mDvcMon
|
protected
boolean |
mFastbootEnabled
|
Öffentliche Konstruktoren | |
---|---|
DeviceManager()
Der DeviceManager sollte aus dem |
Öffentliche Methoden | |
---|---|
void
|
addAvailableDevice(IDevice stubDevice)
|
void
|
addAvailableNativeDevice(IDevice stubDevice)
|
void
|
addDeviceMonitor(IDeviceMonitor mon)
Fügt |
void
|
addFastbootDevice(DeviceManager.FastbootDevice fastbootDevice)
|
void
|
addFastbootListener(IDeviceManager.IFastbootListener listener)
Informiert den Manager darüber, dass ein Listener an Änderungen des Fastboot-Status interessiert ist. |
void
|
addMonitoringTcpFastbootDevice(String serial, String fastboot_serial)
Fügen Sie dem Fastboot-Monitor ein Gerät hinzu. |
ITestDevice
|
allocateDevice(IDeviceSelection options, boolean isTemporary)
Sie können ein Gerät für Tests anfordern, das bestimmte Kriterien erfüllt. |
ITestDevice
|
allocateDevice(IDeviceSelection options)
Sie können ein Gerät für Tests anfordern, das bestimmte Kriterien erfüllt. |
ITestDevice
|
allocateDevice()
Testgerät anfordern |
ITestDevice
|
connectToTcpDevice(String ipAndPort)
Verbindung mit einem Gerät über adb-over-tcp herstellen
Mit dieser Methode wird ein neues Gerät zugewiesen, das später über
Die zurückgegebene |
boolean
|
disconnectFromTcpDevice(ITestDevice tcpDevice)
Trennen Sie die Verbindung zu einem Gerät, das über adb-over-tcp verbunden ist. |
void
|
displayDevicesInfo(PrintWriter stream, boolean includeStub)
Eine nutzerfreundliche Beschreibung mit einer Liste der bekannten Geräte, ihrem Status und den Werten für häufig verwendete |
CommandResult
|
executeCmdOnAvailableDevice(String serial, String command, long timeout, TimeUnit timeUnit)
Eine Hilfsmethode zum Ausführen eines Shell-Befehls auf einem verfügbaren Gerät. |
String
|
executeGlobalAdbCommand(String... cmdArgs)
Führen Sie einen adb-Befehl aus, der nicht auf ein bestimmtes Gerät ausgerichtet ist, z. B. |
ITestDevice
|
forceAllocateDevice(String serial)
Ein Gerät zugewiesen, das derzeit nicht verfügbar ist. |
void
|
freeDevice(ITestDevice device, FreeDeviceState deviceState)
Gerät in den Pool zurückgeben Versuche, ein Gerät zurückzugeben, das noch nicht zugewiesen wurde, werden ignoriert. |
String
|
getAdbPath()
Gibt den Pfad zur zu verwendenden adb-Binärdatei zurück. |
String
|
getAdbVersion()
Ruft die aktuell vom Gerätemanager verwendete adb-Version ab. |
DeviceDescriptor
|
getDeviceDescriptor(String serial)
Gibt den DeviceDescriptor mit der angegebenen Seriennummer zurück. |
String
|
getFastbootPath()
Gibt den Pfad zur zu verwendenden Fastboot-Binärdatei zurück. |
void
|
init(IDeviceSelection globalDeviceFilter,
Initialisieren Sie den Gerätemanager. |
void
|
init(IDeviceSelection globalDeviceFilter,
Initialisieren Sie den Gerätemanager. |
void
|
init()
Initialisieren Sie den Gerätemanager. |
boolean
|
isEmulator(String serial)
Prüfen, ob eine angegebene Seriennummer für einen Emulator steht |
boolean
|
isFileSystemMountCheckEnabled()
Gibt an, ob in |
boolean
|
isNullDevice(String serial)
Prüfen, ob eine angegebene Seriennummer ein Nullgerät darstellt |
void
|
killEmulator(ITestDevice device)
Den angegebenen Emulator herunterfahren. |
void
|
launchEmulator(ITestDevice device, long bootTimeout, IRunUtil runUtil,
Hilfsmethode zum Starten des Emulators. |
|
listAllDevices(boolean shortDescriptor)
Gibt eine Liste von DeviceDescriptors für alle bekannten Geräte zurück. |
|
listAllDevices()
Gibt eine Liste von DeviceDescriptors für alle bekannten Geräte zurück. |
ITestDevice
|
reconnectDeviceToTcp(ITestDevice usbDevice)
Eine Hilfsmethode, die das angegebene USB-Gerät in den adb-over-tcp-Modus umschaltet und dann über |
void
|
removeDeviceMonitor(IDeviceMonitor mon)
Entfernt eine zuvor hinzugefügte |
void
|
removeFastbootListener(IDeviceManager.IFastbootListener listener)
Informiert den Manager darüber, dass ein Listener nicht mehr an Änderungen des Fastboot-Status interessiert ist. |
void
|
restartAdbBridge()
Starten Sie die adb-Bridge neu, falls |
void
|
stopAdbBridge()
Die adb-Bridge und Dienste, die von adb-Verbindungen abhängen, werden angehalten. |
void
|
terminate()
Beendet die Geräteüberwachungsdienste und beendet die ddm-Bibliothek. |
void
|
terminateDeviceMonitor()
Beenden Sie die Gerätemonitore. |
void
|
terminateDeviceRecovery()
Beendet den Thread zur Gerätewiederherstellung. |
void
|
terminateHard(String reason)
Ähnlich wie |
void
|
terminateHard()
Wie |
boolean
|
waitForFirstDeviceAdded(long timeout)
Warten Sie, bis ein erstes physisches Gerät verbunden ist. |
Felder
UNKNOWN_DISPLAY_STRING
public static final String UNKNOWN_DISPLAY_STRING
Anzeigestring für unbekannte Properties
mFastbootEnabled
protected boolean mFastbootEnabled
Öffentliche Konstruktoren
DeviceManager
public DeviceManager ()
Der DeviceManager sollte aus dem GlobalConfiguration
abgerufen werden.
Öffentliche Methoden
addAvailableDevice
public void addAvailableDevice (IDevice stubDevice)
Parameter | |
---|---|
stubDevice |
IDevice |
addAvailableNativeDevice
public void addAvailableNativeDevice (IDevice stubDevice)
Parameter | |
---|---|
stubDevice |
IDevice |
addDeviceMonitor
public void addDeviceMonitor (IDeviceMonitor mon)
Fügt IDeviceMonitor
hinzu
Parameter | |
---|---|
mon |
IDeviceMonitor |
addFastbootDevice
public void addFastbootDevice (DeviceManager.FastbootDevice fastbootDevice)
Parameter | |
---|---|
fastbootDevice |
DeviceManager.FastbootDevice |
addFastbootListener
public void addFastbootListener (IDeviceManager.IFastbootListener listener)
Informiert den Manager darüber, dass ein Listener an Änderungen des Fastboot-Status interessiert ist.
Derzeit überwacht ein IDeviceManager
nur Geräte im Fastboot-Modus, wenn mindestens ein aktiver Listener vorhanden ist.
TODO: Das ist ein bisschen ein Hack – eine bessere Lösung finden
addMonitoringTcpFastbootDevice
public void addMonitoringTcpFastbootDevice (String serial, String fastboot_serial)
Fügen Sie dem Fastboot-Monitor ein Gerät hinzu. Der Fastboot-Monitor verwendet „fastboot_serial“, um mit dem Gerät zu kommunizieren.
Parameter | |
---|---|
serial |
String : die Seriennummer des Geräts. |
fastboot_serial |
String : die Seriennummer des Geräts im Fastboot-Modus. |
allocateDevice
public ITestDevice allocateDevice (IDeviceSelection options, boolean isTemporary)
Sie können ein Gerät für Tests anfordern, das bestimmte Kriterien erfüllt.
Parameter | |
---|---|
options |
IDeviceSelection : die IDeviceSelection , die das Gerät erfüllen sollte. |
isTemporary |
boolean : ob ein temporäres Nullgerät erstellt werden soll. |
Returns | |
---|---|
ITestDevice |
ITestDevice für Tests oder null , wenn keine verfügbar ist |
allocateDevice
public ITestDevice allocateDevice (IDeviceSelection options)
Sie können ein Gerät für Tests anfordern, das bestimmte Kriterien erfüllt.
Parameter | |
---|---|
options |
IDeviceSelection : die IDeviceSelection , die das Gerät erfüllen sollte. |
Returns | |
---|---|
ITestDevice |
ITestDevice für Tests oder null , wenn keine verfügbar ist |
allocateDevice
public ITestDevice allocateDevice ()
Testgerät anfordern
Returns | |
---|---|
ITestDevice |
ITestDevice für Tests oder null , wenn keine verfügbar ist |
connectToTcpDevice
public ITestDevice connectToTcpDevice (String ipAndPort)
Verbindung mit einem Gerät über adb-over-tcp herstellen
Mit dieser Methode wird ein neues Gerät zugewiesen, das später über disconnectFromTcpDevice(com.android.tradefed.device.ITestDevice)
freigegeben werden sollte.
Die zurückgegebene ITestDevice
ist online, reagiert aber möglicherweise nicht.
Beachten Sie, dass durch Aktionen wie einen Neustart auf einem Gerät mit TCP-Verbindung die TCP-Verbindung zum Gerät getrennt wird und ein DeviceNotAvailableException
Parameter | |
---|---|
ipAndPort |
String : die ursprüngliche IP-Adresse und der Port des Geräts, mit dem eine Verbindung hergestellt werden soll |
Returns | |
---|---|
ITestDevice |
ITestDevice oder null , wenn keine TCP-Verbindung hergestellt werden konnte |
disconnectFromTcpDevice
public boolean disconnectFromTcpDevice (ITestDevice tcpDevice)
Trennen Sie die Verbindung zu einem Gerät, das über adb-over-tcp verbunden ist.
Das Gerät wird wieder in den USB-Modus versetzt und freigegeben.
Parameter | |
---|---|
tcpDevice |
ITestDevice : das Gerät, das sich derzeit im TCP-Modus befindet und zuvor über connectToTcpDevice(String) zugewiesen wurde |
Returns | |
---|---|
boolean |
true ob der Wechsel in den USB-Modus erfolgreich war |
displayDevicesInfo
public void displayDevicesInfo (PrintWriter stream, boolean includeStub)
Eine nutzerfreundliche Beschreibung mit einer Liste der bekannten Geräte, ihrem Status und den Werten für häufig verwendete IDeviceSelection
-Optionen ausgeben.
Parameter | |
---|---|
stream |
PrintWriter : ERROR(/PrintWriter) , in dem die Beschreibung ausgegeben werden soll |
includeStub |
boolean : Ob auch Stub-Geräte angezeigt werden sollen. |
executeCmdOnAvailableDevice
public CommandResult executeCmdOnAvailableDevice (String serial, String command, long timeout, TimeUnit timeUnit)
Eine Hilfsmethode zum Ausführen eines Shell-Befehls auf einem verfügbaren Gerät.
Parameter | |
---|---|
serial |
String : Die Geräteserie. |
command |
String : Der Shell-Befehl. |
timeout |
long : Die Zeit, die der Befehl benötigt, um ausgeführt zu werden. |
timeUnit |
TimeUnit : Die Einheit für die Zeitüberschreitung. |
Returns | |
---|---|
CommandResult |
Ein CommandResult . |
executeGlobalAdbCommand
public String executeGlobalAdbCommand (String... cmdArgs)
Führen Sie einen adb-Befehl aus, der nicht auf ein bestimmtes Gerät ausgerichtet ist, z. B. „adb connect“
Returns | |
---|---|
String |
Standardausgabe, wenn der Befehl erfolgreich war, andernfalls null. |
forceAllocateDevice
public ITestDevice forceAllocateDevice (String serial)
Ein Gerät zugewiesen, das derzeit nicht verfügbar ist.
Hat keine Auswirkungen, wenn das Gerät bereits zugewiesen ist.
Parameter | |
---|---|
serial |
String : Die zuzuweisende Geräteseriennummer |
Returns | |
---|---|
ITestDevice |
die ITestDevice oder null , falls keine Zuweisung möglich war |
freeDevice
public void freeDevice (ITestDevice device, FreeDeviceState deviceState)
Gerät in den Pool zurückgeben
Versuche, ein Gerät zurückzugeben, das noch nicht zugewiesen wurde, werden ignoriert.
Parameter | |
---|---|
device |
ITestDevice : die ITestDevice zu „kostenlos“ |
deviceState |
FreeDeviceState : die FreeDeviceState . Wird verwendet, um festzulegen, ob das Gerät in den verfügbaren Gerätepool zurückgegeben wird. |
getAdbPath
public String getAdbPath ()
Gibt den Pfad zur zu verwendenden adb-Binärdatei zurück.
Returns | |
---|---|
String |
getAdbVersion
public String getAdbVersion ()
Ruft die aktuell vom Gerätemanager verwendete adb-Version ab.
Returns | |
---|---|
String |
getDeviceDescriptor
public DeviceDescriptor getDeviceDescriptor (String serial)
Gibt den DeviceDescriptor mit der angegebenen Seriennummer zurück.
Parameter | |
---|---|
serial |
String : Seriennummer des Geräts, für das die Informationen abgerufen werden sollen |
Returns | |
---|---|
DeviceDescriptor |
die DeviceDescriptor für das ausgewählte Gerät oder „null“, wenn die Seriennummer nicht mit einem bekannten Gerät übereinstimmt. |
getFastbootPath
public String getFastbootPath ()
Gibt den Pfad zur zu verwendenden Fastboot-Binärdatei zurück.
Returns | |
---|---|
String |
init
public void init (IDeviceSelection globalDeviceFilter,globalDeviceMonitors, IManagedTestDeviceFactory deviceFactory)
Initialisieren Sie den Gerätemanager. Diese Methode muss nur einmal aufgerufen werden, bevor andere Methoden aufgerufen werden.
Parameter | |
---|---|
globalDeviceFilter |
IDeviceSelection |
globalDeviceMonitors |
|
deviceFactory |
IManagedTestDeviceFactory |
init
public void init (IDeviceSelection globalDeviceFilter,globalDeviceMonitors)
Initialisieren Sie den Gerätemanager. Diese Methode muss nur einmal aufgerufen werden, bevor andere Methoden aufgerufen werden.
Parameter | |
---|---|
globalDeviceFilter |
IDeviceSelection : Gerätefilter |
globalDeviceMonitors |
|
init
public void init ()
Initialisieren Sie den Gerätemanager. Diese Methode muss nur einmal aufgerufen werden, bevor andere Methoden aufgerufen werden.
isEmulator
public boolean isEmulator (String serial)
Prüfen, ob eine angegebene Seriennummer für einen Emulator steht
Parameter | |
---|---|
serial |
String |
Returns | |
---|---|
boolean |
isFileSystemMountCheckEnabled
public boolean isFileSystemMountCheckEnabled ()
Gibt an, ob in NativeDeviceStateMonitor
geprüft werden soll, ob das Dateisystem korrekt bereitgestellt wurde.
Returns | |
---|---|
boolean |
isNullDevice
public boolean isNullDevice (String serial)
Prüfen, ob eine angegebene Seriennummer ein Nullgerät darstellt
Parameter | |
---|---|
serial |
String |
Returns | |
---|---|
boolean |
killEmulator
public void killEmulator (ITestDevice device)
Den angegebenen Emulator herunterfahren.
Blockiert, bis der Emulator aus adb verschwindet. Hat keine Auswirkungen, wenn der Emulator bereits nicht verfügbar ist.
Parameter | |
---|---|
device |
ITestDevice : der ITestDevice , der den zu beendenden Emulator darstellt |
Ausgabe | |
---|---|
DeviceNotAvailableException |
launchEmulator
public void launchEmulator (ITestDevice device, long bootTimeout, IRunUtil runUtil,emulatorArgs)
Hilfsmethode zum Starten des Emulators.
Startet den Emulator wie vom Anrufer angegeben
Parameter | |
---|---|
device |
ITestDevice : Platzhalter ITestDevice für das zugewiesene Emulatorgerät |
bootTimeout |
long : die Zeit in ms, die gewartet wird, bis der Emulator gestartet ist |
emulatorArgs |
: Befehlszeilenargumente zum Starten des Emulators |
Ausgabe | |
---|---|
DeviceNotAvailableException |
listAllDevices
publiclistAllDevices (boolean shortDescriptor)
Gibt eine Liste von DeviceDescriptors für alle bekannten Geräte zurück.
Parameter | |
---|---|
shortDescriptor |
boolean : ob Beschreibungen auf die Mindestinformationen beschränkt werden sollen |
Returns | |
---|---|
|
eine Liste von DeviceDescriptor für alle bekannten Geräte |
listAllDevices
publiclistAllDevices ()
Gibt eine Liste von DeviceDescriptors für alle bekannten Geräte zurück.
Returns | |
---|---|
|
eine Liste von DeviceDescriptor für alle bekannten Geräte |
reconnectDeviceToTcp
public ITestDevice reconnectDeviceToTcp (ITestDevice usbDevice)
Eine Hilfsmethode, die das angegebene USB-Gerät in den adb-over-tcp-Modus umschaltet und dann über connectToTcpDevice(String)
eine Verbindung dazu herstellt.
Parameter | |
---|---|
usbDevice |
ITestDevice : das Gerät, das sich derzeit im USB-Modus befindet |
Returns | |
---|---|
ITestDevice |
die neu zugewiesene ITestDevice im TCP-Modus oder null , wenn keine TCP-Verbindung hergestellt werden konnte |
Ausgabe | |
---|---|
DeviceNotAvailableException |
removeDeviceMonitor
public void removeDeviceMonitor (IDeviceMonitor mon)
Entfernt eine zuvor hinzugefügte IDeviceMonitor
. Hat keine Auswirkungen, wenn mon nicht hinzugefügt wurde.
Parameter | |
---|---|
mon |
IDeviceMonitor |
removeFastbootListener
public void removeFastbootListener (IDeviceManager.IFastbootListener listener)
Informiert den Manager darüber, dass ein Listener nicht mehr an Änderungen des Fastboot-Status interessiert ist.
restartAdbBridge
public void restartAdbBridge ()
Starten Sie die adb-Bridge neu, falls stopAdbBridge()
aufgerufen wurde, und die Dienste, die von adb-Verbindungen abhängen.
stopAdbBridge
public void stopAdbBridge ()
Die adb-Bridge und Dienste, die von adb-Verbindungen abhängen, werden angehalten.
beenden
public void terminate ()
Beendet die Geräteüberwachungsdienste und beendet die DDM-Bibliothek.
Diese Funktion muss beim Beenden der Anwendung aufgerufen werden.
terminateDeviceMonitor
public void terminateDeviceMonitor ()
Beenden Sie die Gerätemonitore.
terminateDeviceRecovery
public void terminateDeviceRecovery ()
Beendet den Thread zur Gerätewiederherstellung.
terminateHard
public void terminateHard (String reason)
Ähnlich wie terminateHard()
.
Parameter | |
---|---|
reason |
String : Optionaler Grund für die Kündigung. |
terminateHard
public void terminateHard ()
Wie terminate()
, aber es wird auch versucht, adb zu beenden.
waitForFirstDeviceAdded
public boolean waitForFirstDeviceAdded (long timeout)
Warten Sie, bis ein erstes physisches Gerät verbunden ist. Wenn ein Gerät bereits verbunden war, wird direkt „True“ zurückgegeben. Wenn kein Gerät hinzugefügt wurde, wird nach Ablauf der Zeitüberschreitung „false“ zurückgegeben.
Parameter | |
---|---|
timeout |
long : Zeit in Millisekunden, die gewartet wird, bevor „false“ zurückgegeben wird. |
Returns | |
---|---|
boolean |