Gerätemanager

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 (Fastboot mode). 

Felder

public static final String UNKNOWN_DISPLAY_STRING

Anzeigestring für unbekannte Eigenschaften

protected DeviceMonitorMultiplexer mDvcMon

protected boolean mFastbootEnabled

Öffentliche Konstruktoren

DeviceManager()

Der DeviceManager sollte aus dem GlobalConfiguration abgerufen werden

Öffentliche Methoden

void addAvailableDevice(IDevice stubDevice)
void addDeviceMonitor(IDeviceMonitor mon)

Fügt ein IDeviceMonitor hinzu

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üge dem Fastboot Monitor ein Gerät hinzu.

ITestDevice allocateDevice(IDeviceSelection options, boolean isTemporary)

Fordere ein Gerät zum Testen an, das bestimmte Kriterien erfüllt.

ITestDevice allocateDevice(IDeviceSelection options)

Fordere ein Gerät zum Testen an, das bestimmte Kriterien erfüllt.

ITestDevice allocateDevice()

Physisches Gerät zum Testen anfordern

ITestDevice connectToTcpDevice(String ipAndPort)

Mit ADB-over-tcp eine Verbindung zu einem Gerät herstellen

Mit dieser Methode wird ein neues Gerät zugewiesen, das schließlich über disconnectFromTcpDevice(com.android.tradefed.device.ITestDevice)

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

boolean disconnectFromTcpDevice(ITestDevice tcpDevice)

Trennen Sie die Verbindung zu einem mit ADB-over-tcp verbundenen Gerät.

void displayDevicesInfo(PrintWriter stream, boolean includeStub)

Ausgabe einer nutzerfreundlichen Beschreibung mit einer Liste bekannter Geräte, deren Status und Werten für häufig verwendete IDeviceSelection-Optionen.

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ührt einen ADB-Befehl aus, der nicht auf ein bestimmtes Gerät ausgerichtet ist, z. B.

ITestDevice forceAllocateDevice(String serial)

Weisen Sie unhöflich ein Gerät zu, auch wenn es im Moment nicht verfügbar ist.

void freeDevice(ITestDevice device, FreeDeviceState deviceState)

Gerät an den Pool zurückgeben

Versuche, ein noch nicht zugewiesenes Gerät zurückzugeben, werden ignoriert.

String getAdbPath()

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

String getAdbVersion()

Laden Sie die ADB-Version herunter, die derzeit vom Gerätemanager verwendet wird.

DeviceDescriptor getDeviceDescriptor(String serial)

Gibt den DeviceDescriptor mit der angegebenen Seriennummer zurück.

String getFastbootPath()

Gibt den Pfad zum Fastboot-Binärprogramm zurück, das verwendet werden soll.

void init(IDeviceSelection globalDeviceFilter, globalDeviceMonitors, IManagedTestDeviceFactory deviceFactory)

Initialisieren Sie den Gerätemanager.

void init(IDeviceSelection globalDeviceFilter, globalDeviceMonitors)

Initialisieren Sie den Gerätemanager.

void init()

Initialisieren Sie den Gerätemanager.

boolean isEmulator(String serial)

Bestimmt, ob die angegebene Seriennummer einen Emulator darstellt

boolean isFileSystemMountCheckEnabled()

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

boolean isNullDevice(String serial)

Bestimmt, ob die angegebene Seriennummer ein Nullgerät darstellt

void killEmulator(ITestDevice device)

Beenden Sie den angegebenen Emulator.

void launchEmulator(ITestDevice device, long bootTimeout, IRunUtil runUtil, emulatorArgs)

Hilfsmethode zum Starten des Emulators.

listAllDevices(boolean shortDescriptor)

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

listAllDevices()

Gibt eine Liste der 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 eine Verbindung herstellt über connectToTcpDevice(String).

void removeDeviceMonitor(IDeviceMonitor mon)

Entfernt einen zuvor hinzugefügten IDeviceMonitor.

void removeFastbootListener(IDeviceManager.IFastbootListener listener)

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

void restartAdbBridge()

ADB-Brücke und Dienste neu starten (wenn stopAdbBridge() aufgerufen wurde), sind von ADB abhängig Verbindungen.

void stopAdbBridge()

Beenden Sie die ADB-Brücke und die Dienste sind von ADB-Verbindungen abhängig.

void terminate()

Stoppt 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)

Zum Beispiel terminateHard().

void terminateHard()

Wie terminate(), versucht aber auch, ADB zu erzwingen.

boolean waitForFirstDeviceAdded(long timeout)

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

Felder

UNBEKANNTER_DISPLAY_STRING

public static final String UNKNOWN_DISPLAY_STRING

Anzeigestring für unbekannte Eigenschaften

mDvcMon

protected DeviceMonitorMultiplexer mDvcMon

mFastbootEnabled

protected boolean mFastbootEnabled

Öffentliche Konstruktoren

Gerätemanager

public DeviceManager ()

Der DeviceManager sollte aus dem GlobalConfiguration abgerufen werden

Öffentliche Methoden

addAvailableDevice (verfügbares Gerät hinzufügen)

public void addAvailableDevice (IDevice stubDevice)

Parameter
stubDevice IDevice

addDeviceMonitor

public void addDeviceMonitor (IDeviceMonitor mon)

Fügt ein IDeviceMonitor hinzu

Parameter
mon IDeviceMonitor

FastbootDevice hinzufügen

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 eines oder mehr aktive Zuhörer.

AUFGABE: Dies ist ein kleiner Hack – suchen Sie eine bessere Lösung

addMonitoringTcpFastbootDevice

public void addMonitoringTcpFastbootDevice (String serial, 
                String fastboot_serial)

Füge dem Fastboot Monitor ein Gerät hinzu. Der Fastboot-Monitor verwendet "fastboot_serial". bis mit dem Gerät kommunizieren.

Parameter
serial String: die Seriennummer des Geräts.

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

assignDevice-Gerät

public ITestDevice allocateDevice (IDeviceSelection options, 
                boolean isTemporary)

Fordere ein Gerät zum Testen an, das bestimmte Kriterien erfüllt.

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

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

Returns
ITestDevice ITestDevice zum Testen oder null, wenn kein Wert verfügbar ist

assignDevice-Gerät

public ITestDevice allocateDevice (IDeviceSelection options)

Fordere ein Gerät zum Testen an, das bestimmte Kriterien erfüllt.

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

Returns
ITestDevice ITestDevice für Tests oder null, wenn eine ist nicht verfügbar

assignDevice-Gerät

public ITestDevice allocateDevice ()

Physisches Gerät zum Testen anfordern

Returns
ITestDevice ITestDevice zum Testen oder null, wenn kein Wert verfügbar ist

ConnectToTcpDevice

public ITestDevice connectToTcpDevice (String ipAndPort)

Mit ADB-over-tcp eine Verbindung zu einem Gerät herstellen

Mit dieser Methode wird ein neues Gerät zugewiesen, das schließlich über disconnectFromTcpDevice(com.android.tradefed.device.ITestDevice)

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

Hinweis: Bei Aktionen wie einem Neustart auf einem über TCP verbundenen Gerät wird der TCP-Verbindung zum Gerät und führt zu einer DeviceNotAvailableException

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

Returns
ITestDevice ITestDevice oder null, wenn keine TCP-Verbindung hergestellt werden konnte

TrennenVonTcpDevice

public boolean disconnectFromTcpDevice (ITestDevice tcpDevice)

Trennen Sie die Verbindung zu einem mit ADB-over-tcp verbundenen Gerät.

Schaltet das Gerät zurück in den USB-Modus und gibt ihn frei.

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

Returns
boolean true, wenn der Wechsel in den USB-Modus erfolgreich war

Geräteinformationen anzeigen

public void displayDevicesInfo (PrintWriter stream, 
                boolean includeStub)

Ausgabe einer nutzerfreundlichen Beschreibung mit einer Liste bekannter Geräte, deren Status und Werten für häufig verwendete IDeviceSelection-Optionen.

Parameter
stream PrintWriter: ERROR(/PrintWriter), an den die Beschreibung ausgegeben werden soll

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

runCmdOnAvailableDevice

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 Seriennummer des Geräts.

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.

Returns
CommandResult Ein CommandResult.

AusführenGlobalAdbCommand

public String executeGlobalAdbCommand (String... cmdArgs)

Führt einen ADB-Befehl aus, der nicht auf ein bestimmtes Gerät ausgerichtet ist, z. B. "adb connect"

Returns
String std-Ausgabe, wenn der Befehl „successm“ andernfalls null ist.

PowerAllocateDevice

public ITestDevice forceAllocateDevice (String serial)

Weisen Sie unhöflich ein Gerät zu, auch wenn es im Moment nicht verfügbar ist.

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

Parameter
serial String: die Geräteserie, die zugewiesen werden soll

Returns
ITestDevice das ITestDevice oder null, wenn es nicht zugewiesen werden konnte

FreeDevice

public void freeDevice (ITestDevice device, 
                FreeDeviceState deviceState)

Gerät an den Pool zurückgeben

Versuche, ein noch nicht zugewiesenes Gerät zurückzugeben, werden ignoriert.

Parameter
device ITestDevice: die kostenlose ITestDevice

deviceState FreeDeviceState: die FreeDeviceState. Wird verwendet, um zu steuern, Gerät wird in den verfügbaren Gerätepool zurückgeführt.

getAdbPath

public String getAdbPath ()

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

Returns
String

getAdbVersion

public String getAdbVersion ()

Laden Sie die ADB-Version herunter, die derzeit vom Gerätemanager verwendet wird.

Returns
String

getDeviceDescriptor,

public DeviceDescriptor getDeviceDescriptor (String serial)

Gibt den DeviceDescriptor mit der angegebenen Seriennummer zurück.

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

Returns
DeviceDescriptor DeviceDescriptor für das ausgewählte Gerät oder null, wenn die Seriennummer nicht mit einem bekannten Gerät übereinstimmen.

getFastbootPath

public String getFastbootPath ()

Gibt den Pfad zum Fastboot-Binärprogramm zurück, das verwendet werden soll.

Returns
String

init

public void init (IDeviceSelection globalDeviceFilter, 
                 globalDeviceMonitors, 
                IManagedTestDeviceFactory deviceFactory)

Initialisieren Sie den Gerätemanager. Dies darf nur einmal und vor jedem anderen aufgerufen werden. aufgerufen werden.

Parameter
globalDeviceFilter IDeviceSelection

globalDeviceMonitors

deviceFactory IManagedTestDeviceFactory

init

public void init (IDeviceSelection globalDeviceFilter, 
                 globalDeviceMonitors)

Initialisieren Sie den Gerätemanager. Dies darf nur einmal und vor jedem anderen aufgerufen werden. aufgerufen werden.

Parameter
globalDeviceFilter IDeviceSelection: der Gerätefilter

globalDeviceMonitors

init

public void init ()

Initialisieren Sie den Gerätemanager. Dies darf nur einmal und vor jedem anderen aufgerufen werden. aufgerufen werden.

isEmulator

public boolean isEmulator (String serial)

Bestimmt, ob die angegebene Seriennummer einen Emulator darstellt

Parameter
serial String

Returns
boolean

isFileSystemMountCheckEnabled

public boolean isFileSystemMountCheckEnabled ()

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

Returns
boolean

isNullDevice

public boolean isNullDevice (String serial)

Bestimmt, ob die angegebene Seriennummer ein Nullgerät darstellt

Parameter
serial String

Returns
boolean

KillEmulator

public void killEmulator (ITestDevice device)

Beenden Sie den angegebenen Emulator.

Blockiert, bis der Emulator aus ADB entfernt wird. Hat keine Auswirkung, wenn der Emulator nicht bereits aktiviert ist verfügbar.

Parameter
device ITestDevice: ITestDevice, die den herunterzufahrenden Emulator darstellt

Ausgabe
DeviceNotAvailableException

startEmulator

public void launchEmulator (ITestDevice device, 
                long bootTimeout, 
                IRunUtil runUtil, 
                 emulatorArgs)

Hilfsmethode zum Starten des Emulators.

Startet den Emulator gemäß den Angaben des Aufrufers

Parameter
device ITestDevice: der Platzhalter ITestDevice, der für das zugewiesene Emulatorgerät steht

bootTimeout long: die Zeit in ms, die auf das Starten des Emulators gewartet werden soll

emulatorArgs : Befehlszeilenargumente zum Starten des Emulators

Ausgabe
DeviceNotAvailableException

ListeAlleGeräte

public  listAllDevices (boolean shortDescriptor)

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

Parameter
shortDescriptor boolean: ob Deskriptoren auf die Mindestinformationen beschränkt werden sollen

Returns
Liste mit DeviceDescriptor für alle bekannten Geräte

ListeAlleGeräte

public  listAllDevices ()

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

Returns
Liste mit DeviceDescriptor für alle bekannten Geräte

Wiedereinstellen von Geräten zu Tcp

public ITestDevice reconnectDeviceToTcp (ITestDevice usbDevice)

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

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 ein TCP- Verbindung konnte nicht hergestellt werden

Ausgabe
DeviceNotAvailableException

removeDeviceMonitor

public void removeDeviceMonitor (IDeviceMonitor mon)

Entfernt einen zuvor hinzugefügten IDeviceMonitor. Hat keine Auswirkung, wenn kein Mo. hinzugefügt wurde.

Parameter
mon IDeviceMonitor

removeFastbootListener

public void removeFastbootListener (IDeviceManager.IFastbootListener listener)

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

AdBBridge neu starten

public void restartAdbBridge ()

ADB-Brücke und Dienste neu starten (wenn stopAdbBridge() aufgerufen wurde), sind von ADB abhängig Verbindungen.

stopAdBridge

public void stopAdbBridge ()

Beenden Sie die ADB-Brücke und die Dienste sind von ADB-Verbindungen abhängig.

beenden

public void terminate ()

Stoppt Geräteüberwachungsdienste und beendet die ddm-Bibliothek.

Diese muss bei Beendigung der Anwendung aufgerufen werden.

beendenDeviceMonitor

public void terminateDeviceMonitor ()

Beenden Sie die Gerätemonitore.

Gerätewiederherstellung beenden

public void terminateDeviceRecovery ()

Beendet den Thread zur Gerätewiederherstellung.

BeendenHard

public void terminateHard (String reason)

Zum Beispiel terminateHard().

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

BeendenHard

public void terminateHard ()

Wie terminate(), versucht aber auch, ADB zu erzwingen.

WaitForFirstDeviceAdded

public boolean waitForFirstDeviceAdded (long timeout)

Warten Sie, bis ein erstes physisches Gerät verbunden ist. Wenn schon einmal ein Gerät verbunden war, gibt direkt "True" zurück. Wurde kein Gerät hinzugefügt, wird nach Ablauf des Zeitlimits „false“ zurückgegeben.

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

Returns
boolean