IDeviceManager

public interface IDeviceManager

com.android.tradefed.device.IDeviceManager


Schnittstelle zum Verwalten der verfügbaren Geräte für Tests.

Zusammenfassung

Verschachtelte Klassen

interface IDeviceManager.IFastbootListener

Ein Listener für Änderungen des Fastboot-Status. 

Öffentliche Methoden

abstract void addDeviceMonitor(IDeviceMonitor mon)

Fügt eine IDeviceMonitor hinzu

abstract void addFastbootListener(IDeviceManager.IFastbootListener listener)

Informiert den Manager darüber, dass ein Listener an Änderungen des Fastboot-Status interessiert ist.

abstract void addMonitoringTcpFastbootDevice(String serial, String fastboot_serial)

Gerät zum Fastboot-Monitor hinzufügen

abstract ITestDevice allocateDevice(IDeviceSelection options, boolean isTemporary)

Sie können ein Gerät zum Testen anfordern, das bestimmte Kriterien erfüllt.

abstract ITestDevice allocateDevice(IDeviceSelection options)

Sie können ein Gerät zum Testen anfordern, das bestimmte Kriterien erfüllt.

abstract ITestDevice allocateDevice()

Physisches Gerät für Tests anfordern

abstract ITestDevice connectToTcpDevice(String ipAndPort)

Mit einem Gerät über „adb-over-tcp“ verbinden

Mit dieser Methode wird ein neues Gerät zugewiesen, das schließlich über disconnectFromTcpDevice(ITestDevice) freigegeben werden sollte.

Das zurückgegebene ITestDevice ist online, reagiert aber möglicherweise nicht.

abstract boolean disconnectFromTcpDevice(ITestDevice tcpDevice)

Trennen Sie die Verbindung zu einem verbundenen Gerät, das über „adb over TCP“ verbunden ist.

abstract void displayDevicesInfo(PrintWriter printWriter, boolean includeStub)

Gib eine benutzerfreundliche Beschreibung mit einer Liste der bekannten Geräte, ihres Status und der Werte für häufig verwendete IDeviceSelection-Optionen aus.

abstract CommandResult executeCmdOnAvailableDevice(String serial, String command, long timeout, TimeUnit timeUnit)

Eine Hilfsmethode zum Ausführen von Shell-Befehlen auf dem verfügbaren Gerät.

abstract ITestDevice forceAllocateDevice(String serial)

Weise ein Gerät auf unhöfliche Weise zu, auch wenn es derzeit nicht verfügbar ist.

abstract void freeDevice(ITestDevice device, FreeDeviceState state)

Gerät in den Pool zurückgeben

Versuche, ein Gerät zurückzugeben, das zuvor nicht zugewiesen wurde, werden ignoriert.

abstract String getAdbPath()

Gibt den Pfad zum zu verwendenden ADB-Binärprogramm zurück.

abstract String getAdbVersion()

Rufen Sie die ADB-Version ab, die derzeit vom Geräte-Manager verwendet wird.

abstract DeviceDescriptor getDeviceDescriptor(String serial)

Gibt den DeviceDescriptor mit der angegebenen Seriennummer zurück.

abstract String getFastbootPath()

Gibt den Pfad zur zu verwendenden Fastboot-Binärdatei zurück.

abstract long getShellCheckCmdTime()

Ruft das Zeitlimit in Millisekunden für den Befehl zum Prüfen der Shell-Verfügbarkeit ab.

abstract void init(IDeviceSelection globalDeviceFilter, List<IDeviceMonitor> deviceMonitors)

Initialisieren Sie den Geräte-Manager mit einem Gerätefilter.

abstract void init()

Initialisieren Sie den Geräte-Manager.

abstract boolean isEmulator(String serial)

Ermitteln, ob die angegebene Seriennummer einen Emulator darstellt

default boolean isFileSystemMountCheckEnabled()

Gibt zurück, ob geprüft werden soll, ob das Dateisystem in NativeDeviceStateMonitor korrekt bereitgestellt wurde.

abstract boolean isNullDevice(String serial)

Ermitteln, ob die angegebene Seriennummer ein Nullmodemgerät darstellt

abstract void killEmulator(ITestDevice device)

Fährt den angegebenen Emulator herunter.

abstract void launchEmulator(ITestDevice device, long bootTimeout, IRunUtil runUtil, List<String> emulatorArgs)

Helper-Methode zum Starten des Emulators.

abstract List<DeviceDescriptor> listAllDevices(boolean shortDescriptor)

Gibt eine Liste von DeviceDescriptors für alle bekannten Geräte zurück.

abstract List<DeviceDescriptor> listAllDevices()

Gibt eine Liste von DeviceDescriptors für alle bekannten Geräte zurück.

abstract ITestDevice reconnectDeviceToTcp(ITestDevice usbDevice)

Eine Hilfsmethode, die das angegebene USB-Gerät in den ADB-over-TCP-Modus schaltet und dann über connectToTcpDevice(String) eine Verbindung dazu herstellt.

abstract void removeDeviceMonitor(IDeviceMonitor mon)

Entfernt eine zuvor hinzugefügte IDeviceMonitor.

abstract void removeFastbootListener(IDeviceManager.IFastbootListener listener)

Informiert den Manager darüber, dass ein Listener nicht mehr an Änderungen des Fastboot-Status interessiert ist.

default void removeMonitoringTcpFastbootDevice(String serial)
abstract void restartAdbBridge()

Starten Sie die ADB-Bridge und die Dienste neu (falls stopAdbBridge() aufgerufen wurde), da sie von ADB-Verbindungen abhängen.

abstract void stopAdbBridge()

adb-Bridge und Dienste, die von adb-Verbindungen abhängen, werden beendet.

abstract void terminate()

Beendet die Dienste zur Geräteüberwachung und beendet die DDM-Bibliothek.

abstract void terminateDeviceMonitor()

Beenden Sie die Geräteüberwachung.

abstract void terminateDeviceRecovery()

Beendet den Thread zur Geräte-Wiederherstellung.

default void terminateHard(String reason)

Ähnlich wie terminateHard().

abstract void terminateHard()

Wie terminate(), versucht aber auch, adb zu beenden.

abstract boolean waitForFirstDeviceAdded(long timeout)

Warten Sie, bis ein erstes physisches Gerät verbunden ist.

Öffentliche Methoden

addDeviceMonitor

public abstract void addDeviceMonitor (IDeviceMonitor mon)

Fügt eine IDeviceMonitor hinzu

Parameter
mon IDeviceMonitor

addFastbootListener

public abstract void addFastbootListener (IDeviceManager.IFastbootListener listener)

Informiert den Manager darüber, dass ein Listener an Änderungen des Fastboot-Status interessiert ist.

Derzeit überwacht ein IDeviceManager Geräte im Fastboot-Modus nur, wenn mindestens ein aktiver Listener vorhanden ist.

TODO: Das ist ein bisschen ein Hack – finde eine bessere Lösung.

addMonitoringTcpFastbootDevice

public abstract void addMonitoringTcpFastbootDevice (String serial, 
                String fastboot_serial)

Gerät zum Fastboot-Monitor hinzufügen Der Fastboot-Monitor verwendet „fastboot_serial“ für die Kommunikation mit dem Gerät.

Parameter
serial String: die Seriennummer des Geräts.

fastboot_serial String: Die Seriennummer des Geräts im Fastboot-Modus.

allocateDevice

public abstract ITestDevice allocateDevice (IDeviceSelection options, 
                boolean isTemporary)

Sie können ein Gerät zum Testen anfordern, das bestimmte Kriterien erfüllt.

Parameter
options IDeviceSelection: Die IDeviceSelection, die das Gerät erfüllen muss.

isTemporary boolean: Gibt an, ob ein temporäres NullDevice erstellt werden soll.

Gibt Folgendes zurück:
ITestDevice ITestDevice für Tests oder null, wenn keine verfügbar ist

allocateDevice

public abstract ITestDevice allocateDevice (IDeviceSelection options)

Sie können ein Gerät zum Testen anfordern, das bestimmte Kriterien erfüllt.

Parameter
options IDeviceSelection: Die IDeviceSelection, die das Gerät erfüllen muss.

Gibt Folgendes zurück:
ITestDevice ITestDevice für Tests oder null, wenn keine verfügbar ist

allocateDevice

public abstract ITestDevice allocateDevice ()

Physisches Gerät für Tests anfordern

Gibt Folgendes zurück:
ITestDevice ITestDevice für Tests oder null, wenn keine verfügbar ist

connectToTcpDevice

public abstract ITestDevice connectToTcpDevice (String ipAndPort)

Mit einem Gerät über „adb-over-tcp“ verbinden

Mit dieser Methode wird ein neues Gerät zugewiesen, das schließlich über disconnectFromTcpDevice(ITestDevice) freigegeben werden sollte.

Das zurückgegebene ITestDevice ist online, reagiert aber möglicherweise nicht.

Wenn Sie beispielsweise ein Gerät mit TCP-Verbindung neu starten, wird die TCP-Verbindung zum Gerät unterbrochen und es kommt zu einem DeviceNotAvailableException.

Parameter
ipAndPort String: die ursprüngliche IP-Adresse und der Port des Geräts, zu dem eine Verbindung hergestellt werden soll

Gibt Folgendes zurück:
ITestDevice ITestDevice oder null, wenn keine TCP-Verbindung hergestellt werden konnte

disconnectFromTcpDevice

public abstract boolean disconnectFromTcpDevice (ITestDevice tcpDevice)

Trennen Sie die Verbindung zu einem verbundenen Gerät, das über „adb over TCP“ verbunden ist.

Schaltet das Gerät wieder in den USB-Modus und gibt es frei.

Parameter
tcpDevice ITestDevice: Das Gerät, das sich derzeit im TCP-Modus befindet und zuvor über connectToTcpDevice(String) zugewiesen wurde.

Gibt Folgendes zurück:
boolean true, wenn der Wechsel zum USB-Modus erfolgreich war

displayDevicesInfo

public abstract void displayDevicesInfo (PrintWriter printWriter, 
                boolean includeStub)

Gib eine benutzerfreundliche Beschreibung mit einer Liste der bekannten Geräte, ihres Status und der Werte für häufig verwendete IDeviceSelection-Optionen aus.

Parameter
printWriter PrintWriter: die PrintWriter, in die die Beschreibung ausgegeben werden soll

includeStub boolean: Gibt an, ob auch Stub-Geräte angezeigt werden sollen.

executeCmdOnAvailableDevice

public abstract CommandResult executeCmdOnAvailableDevice (String serial, 
                String command, 
                long timeout, 
                TimeUnit timeUnit)

Eine Hilfsmethode zum Ausführen von Shell-Befehlen auf dem verfügbaren Gerät.

Parameter
serial String: Die Geräteseriennummer.

command String: Der Shell-Befehl.

timeout long: Die Zeit, die für die Ausführung des Befehls benötigt wird.

timeUnit TimeUnit: Die Einheit für das Zeitlimit.

Gibt Folgendes zurück:
CommandResult A CommandResult.

forceAllocateDevice

public abstract ITestDevice forceAllocateDevice (String serial)

Weise ein Gerät auf unhöfliche Weise zu, auch wenn es derzeit nicht verfügbar ist.

Hat keine Auswirkungen, wenn das Gerät bereits zugewiesen ist.

Parameter
serial String: die zuzuweisende Geräteseriennummer

Gibt Folgendes zurück:
ITestDevice die ITestDevice oder null, wenn sie nicht zugewiesen werden konnte

freeDevice

public abstract void freeDevice (ITestDevice device, 
                FreeDeviceState state)

Gerät in den Pool zurückgeben

Versuche, ein Gerät zurückzugeben, das zuvor nicht zugewiesen wurde, werden ignoriert.

Parameter
device ITestDevice: die ITestDevice, die freigegeben werden soll

state FreeDeviceState: die FreeDeviceState. Wird verwendet, um zu steuern, ob das Gerät in den Pool verfügbarer Geräte zurückgegeben wird.

getAdbPath

public abstract String getAdbPath ()

Gibt den Pfad zum zu verwendenden ADB-Binärprogramm zurück.

Gibt Folgendes zurück:
String

getAdbVersion

public abstract String getAdbVersion ()

Rufen Sie die ADB-Version ab, die derzeit vom Geräte-Manager verwendet wird.

Gibt Folgendes zurück:
String

getDeviceDescriptor

public abstract DeviceDescriptor getDeviceDescriptor (String serial)

Gibt den DeviceDescriptor mit der angegebenen Seriennummer zurück.

Parameter
serial String: Seriennummer des Geräts, das abgerufen werden soll

Gibt Folgendes zurück:
DeviceDescriptor Die DeviceDescriptor für das ausgewählte Gerät oder „null“, wenn die Seriennummer nicht mit einem bekannten Gerät übereinstimmt.

getFastbootPath

public abstract String getFastbootPath ()

Gibt den Pfad zur zu verwendenden Fastboot-Binärdatei zurück.

Gibt Folgendes zurück:
String

getShellCheckCmdTime

public abstract long getShellCheckCmdTime ()

Ruft das Zeitlimit in Millisekunden für den Befehl zum Prüfen der Shell-Verfügbarkeit ab.

Gibt Folgendes zurück:
long

init

public abstract void init (IDeviceSelection globalDeviceFilter, 
                List<IDeviceMonitor> deviceMonitors)

Initialisieren Sie den Geräte-Manager mit einem Gerätefilter. Mit diesem Filter kann der DeviceManager angewiesen werden, bestimmte verbundene Geräte zu ignorieren.

Parameter
globalDeviceFilter IDeviceSelection: der Gerätefilter

deviceMonitors List

init

public abstract void init ()

Initialisieren Sie den Geräte-Manager. Diese Methode muss einmal und nur einmal aufgerufen werden, bevor andere Methoden aufgerufen werden.

isEmulator

public abstract boolean isEmulator (String serial)

Ermitteln, ob die angegebene Seriennummer einen Emulator darstellt

Parameter
serial String

Gibt Folgendes zurück:
boolean

isFileSystemMountCheckEnabled

public boolean isFileSystemMountCheckEnabled ()

Gibt zurück, ob geprüft werden soll, ob das Dateisystem in NativeDeviceStateMonitor korrekt bereitgestellt wurde.

Gibt Folgendes zurück:
boolean

isNullDevice

public abstract boolean isNullDevice (String serial)

Ermitteln, ob die angegebene Seriennummer ein Nullmodemgerät darstellt

Parameter
serial String

Gibt Folgendes zurück:
boolean

killEmulator

public abstract void killEmulator (ITestDevice device)

Fährt den angegebenen Emulator herunter.

Wird 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 herunterzufahrenden Emulator darstellt

Löst aus
DeviceNotAvailableException wenn der Emulator nicht heruntergefahren werden kann

launchEmulator

public abstract void launchEmulator (ITestDevice device, 
                long bootTimeout, 
                IRunUtil runUtil, 
                List<String> emulatorArgs)

Helper-Methode zum Starten des Emulators.

Startet den Emulator wie vom Anrufer angegeben

Parameter
device ITestDevice: Der Platzhalter ITestDevice, der das zugewiesene Emulatorgerät darstellt.

bootTimeout long: die Zeit in Millisekunden, die gewartet wird, bis der Emulator hochgefahren ist

emulatorArgs List: Befehlszeilenargumente zum Starten des Emulators

Löst aus
DeviceNotAvailableException Wenn der Emulator nicht gestartet oder online geschaltet werden kann

listAllDevices

public abstract List<DeviceDescriptor> listAllDevices (boolean shortDescriptor)

Gibt eine Liste von DeviceDescriptors für alle bekannten Geräte zurück.

Parameter
shortDescriptor boolean: Gibt an, ob die Deskriptoren auf die Mindestinformationen beschränkt werden sollen.

Gibt Folgendes zurück:
List<DeviceDescriptor> Eine Liste mit DeviceDescriptor für alle bekannten Geräte

listAllDevices

public abstract List<DeviceDescriptor> listAllDevices ()

Gibt eine Liste von DeviceDescriptors für alle bekannten Geräte zurück.

Gibt Folgendes zurück:
List<DeviceDescriptor> Eine Liste mit DeviceDescriptor für alle bekannten Geräte

reconnectDeviceToTcp

public abstract ITestDevice reconnectDeviceToTcp (ITestDevice usbDevice)

Eine Hilfsmethode, die das angegebene USB-Gerät in den ADB-over-TCP-Modus schaltet und dann über connectToTcpDevice(String) eine Verbindung dazu herstellt.

Parameter
usbDevice ITestDevice: das Gerät, das sich derzeit im USB-Modus befindet

Gibt Folgendes zurück:
ITestDevice die neu zugewiesene ITestDevice im TCP-Modus oder null, wenn keine TCP-Verbindung hergestellt werden konnte

Löst aus
DeviceNotAvailableException wenn die Verbindung zu usbDevice unterbrochen wurde und nicht wiederhergestellt werden konnte

removeDeviceMonitor

public abstract void removeDeviceMonitor (IDeviceMonitor mon)

Entfernt eine zuvor hinzugefügte IDeviceMonitor. Hat keine Auswirkungen, wenn „mon“ nicht hinzugefügt wurde.

Parameter
mon IDeviceMonitor

removeFastbootListener

public abstract void removeFastbootListener (IDeviceManager.IFastbootListener listener)

Informiert den Manager darüber, dass ein Listener nicht mehr an Änderungen des Fastboot-Status interessiert ist.

removeMonitoringTcpFastbootDevice

public void removeMonitoringTcpFastbootDevice (String serial)

Parameter
serial String

restartAdbBridge

public abstract void restartAdbBridge ()

Starten Sie die ADB-Bridge und die Dienste neu (falls stopAdbBridge() aufgerufen wurde), da sie von ADB-Verbindungen abhängen.

stopAdbBridge

public abstract void stopAdbBridge ()

adb-Bridge und Dienste, die von adb-Verbindungen abhängen, werden beendet.

beenden

public abstract void terminate ()

Beendet die Dienste zur Geräteüberwachung und beendet die DDM-Bibliothek.

Diese Funktion muss beim Beenden der Anwendung aufgerufen werden.

terminateDeviceMonitor

public abstract void terminateDeviceMonitor ()

Beenden Sie die Geräteüberwachung.

terminateDeviceRecovery

public abstract void terminateDeviceRecovery ()

Beendet den Thread zur Geräte-Wiederherstellung.

terminateHard

public void terminateHard (String reason)

Ähnlich wie terminateHard().

Parameter
reason String: Optionaler Grund für die Kündigung.

terminateHard

public abstract void terminateHard ()

Wie terminate(), versucht aber auch, adb zu beenden.

waitForFirstDeviceAdded

public abstract boolean waitForFirstDeviceAdded (long timeout)

Warten Sie, bis ein erstes physisches Gerät verbunden ist. Wenn ein Gerät zuvor verbunden war, wird direkt „True“ zurückgegeben. Wenn kein Gerät hinzugefügt wurde, wird nach dem Zeitlimit „false“ zurückgegeben.

Parameter
timeout long: Zeit in Millisekunden, die gewartet wird, bevor „false“ zurückgegeben wird.

Gibt Folgendes zurück:
boolean