Menadżer urządzeń

public class DeviceManager
extends Object implements IDeviceManager

java.lang.Obiekt
com.android.tradefed.device.DeviceManager


Streszczenie

Klasy zagnieżdżone

class DeviceManager.FastbootDevice

Reprezentacja urządzenia w trybie Fastboot.

Pola

public static final String UNKNOWN_DISPLAY_STRING

Wyświetl ciąg znaków dla nieznanych właściwości

protected DeviceMonitorMultiplexer mDvcMon

protected boolean mFastbootEnabled

Konstruktory publiczne

DeviceManager ()

Menedżer urządzeń powinien zostać pobrany z pliku GlobalConfiguration

Metody publiczne

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

Dodaje IDeviceMonitor

void addFastbootDevice ( DeviceManager.FastbootDevice fastbootDevice)
void addFastbootListener ( IDeviceManager.IFastbootListener listener)

Informuje menedżera, że ​​słuchacz jest zainteresowany zmianami stanu fastboot.

void addMonitoringTcpFastbootDevice (String serial, String fastboot_serial)

Dodaj urządzenie do monitora fastboot.

ITestDevice allocateDevice ( IDeviceSelection options, boolean isTemporary)

Poproś o testowanie urządzenia spełniającego określone kryteria.

ITestDevice allocateDevice ( IDeviceSelection options)

Poproś o testowanie urządzenia spełniającego określone kryteria.

ITestDevice allocateDevice ()

Poproś o fizyczne urządzenie do testów

ITestDevice connectToTcpDevice (String ipAndPort)

Połącz się z urządzeniem za pomocą adb-over-tcp

Ta metoda przydziela nowe urządzenie, które ostatecznie powinno zostać zwolnione przez disconnectFromTcpDevice(com.android.tradefed.device.ITestDevice)

Zwrócone ITestDevice będzie w trybie online, ale może nie odpowiadać.

boolean disconnectFromTcpDevice ( ITestDevice tcpDevice)

Odłącz się od podłączonego urządzenia adb-over-tcp.

void displayDevicesInfo (PrintWriter stream, boolean includeStub)

Wygeneruj przyjazny dla użytkownika opis zawierający listę znanych urządzeń, ich stan i wartości dla często używanych opcji IDeviceSelection .

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

Metoda pomocnicza do wykonywania poleceń powłoki na dostępnym urządzeniu.

String executeGlobalAdbCommand (String... cmdArgs)

Wykonaj polecenie adb, które nie jest skierowane do konkretnego urządzenia, np.

ITestDevice forceAllocateDevice (String serial)

Niegrzecznie przydzielaj urządzenie, nawet jeśli nie jest ono aktualnie dostępne.

void freeDevice ( ITestDevice device, FreeDeviceState deviceState)

Zwróć urządzenie do puli

Próby zwrotu urządzenia, które nie zostało wcześniej przydzielone, zostaną zignorowane.

String getAdbPath ()

Zwraca ścieżkę do pliku binarnego adb do użycia.

String getAdbVersion ()

Pobierz wersję adb aktualnie używaną przez menedżera urządzeń.

DeviceDescriptor getDeviceDescriptor (String serial)

Zwraca DeviceDescriptor z podanym numerem seryjnym.

String getFastbootPath ()

Zwraca ścieżkę do pliku binarnego fastboot do użycia.

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

Zainicjuj menedżera urządzeń.

void init ( IDeviceSelection globalDeviceFilter, globalDeviceMonitors) init ( IDeviceSelection globalDeviceFilter, globalDeviceMonitors)

Zainicjuj menedżera urządzeń.

void init ()

Zainicjuj menedżera urządzeń.

boolean isEmulator (String serial)

Określ, czy podany numer seryjny reprezentuje emulator

boolean isFileSystemMountCheckEnabled ()

Zwraca, czy powinniśmy sprawdzić w NativeDeviceStateMonitor , czy system plików jest prawidłowo zamontowany.

boolean isNullDevice (String serial)

Określ, czy podany numer seryjny reprezentuje urządzenie zerowe

void killEmulator ( ITestDevice device)

Wyłącz dany emulator.

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

Metoda pomocnicza do uruchamiania emulatora.

listAllDevices (boolean shortDescriptor)

Zwraca listę DeviceDescriptors dla wszystkich znanych urządzeń

listAllDevices ()

Zwraca listę DeviceDescriptors dla wszystkich znanych urządzeń

ITestDevice reconnectDeviceToTcp ( ITestDevice usbDevice)

Metoda pomocnicza, która przełącza dane urządzenie usb w tryb adb-over-tcp, a następnie łączy się z nim przez connectToTcpDevice(String) .

void removeDeviceMonitor ( IDeviceMonitor mon)

Usuwa wcześniej dodany IDeviceMonitor .

void removeFastbootListener ( IDeviceManager.IFastbootListener listener)

Informuje menedżera, że ​​słuchacz nie jest już zainteresowany zmianami stanu fastboot.

void restartAdbBridge ()

Uruchom ponownie (jeśli wywołano stopAdbBridge() ) adb bridge i usługi zależą od połączeń adb.

void stopAdbBridge ()

Zatrzymaj most adb, a usługi zależą od połączeń adb.

void terminate ()

Zatrzymuje usługi monitorowania urządzeń i kończy działanie biblioteki ddm.

void terminateDeviceMonitor ()

Zatrzymaj monitory urządzeń.

void terminateDeviceRecovery ()

Zatrzymuje wątek odzyskiwania urządzenia.

void terminateHard (String reason)

Podobnie jak terminateHard() .

void terminateHard ()

Podobnie jak terminate() , ale próbuje również wymusić zamknięcie adb.

boolean waitForFirstDeviceAdded (long timeout)

Poczekaj, aż zostanie podłączone pierwsze urządzenie fizyczne.

Pola

UNKNOWN_DISPLAY_STRING

public static final String UNKNOWN_DISPLAY_STRING

Wyświetl ciąg znaków dla nieznanych właściwości

mDvcMon

protected DeviceMonitorMultiplexer mDvcMon

mFastboot włączony

protected boolean mFastbootEnabled

Konstruktory publiczne

Menadżer urządzeń

public DeviceManager ()

Menedżer urządzeń powinien zostać pobrany z pliku GlobalConfiguration

Metody publiczne

dodajDostępneUrządzenie

public void addAvailableDevice (IDevice stubDevice)

Parametry
stubDevice IDevice

dodaj Monitor urządzeń

public void addDeviceMonitor (IDeviceMonitor mon)

Dodaje IDeviceMonitor

Parametry
mon IDeviceMonitor

dodaj urządzenie Fastboot

public void addFastbootDevice (DeviceManager.FastbootDevice fastbootDevice)

Parametry
fastbootDevice DeviceManager.FastbootDevice

dodaj FastbootListener

public void addFastbootListener (IDeviceManager.IFastbootListener listener)

Informuje menedżera, że ​​słuchacz jest zainteresowany zmianami stanu fastboot.

Obecnie IDeviceManager będzie monitorować urządzenia w trybie fastboot tylko wtedy, gdy istnieje co najmniej jeden aktywny odbiornik.

DO ZROBIENIA: to trochę hack - znajdź lepsze rozwiązanie

addMonitoringTcpFastbootDevice

public void addMonitoringTcpFastbootDevice (String serial, 
                String fastboot_serial)

Dodaj urządzenie do monitora fastboot. Monitor fastboot użyje „fastboot_serial” do komunikacji z urządzeniem.

Parametry
serial String : numer seryjny urządzenia.

fastboot_serial String : numer seryjny trybu szybkiego rozruchu urządzenia.

przydziel urządzenie

public ITestDevice allocateDevice (IDeviceSelection options, 
                boolean isTemporary)

Poproś o testowanie urządzenia spełniającego określone kryteria.

Parametry
options IDeviceSelection : IDeviceSelection urządzenie powinno spełniać.

isTemporary boolean : czy należy utworzyć tymczasowe urządzenie NullDevice.

Zwroty
ITestDevice ITestDevice do testowania lub null , jeśli nie jest dostępny

przydziel urządzenie

public ITestDevice allocateDevice (IDeviceSelection options)

Poproś o testowanie urządzenia spełniającego określone kryteria.

Parametry
options IDeviceSelection : IDeviceSelection urządzenie powinno spełniać.

Zwroty
ITestDevice ITestDevice do testowania lub null , jeśli nie jest dostępny

przydziel urządzenie

public ITestDevice allocateDevice ()

Poproś o fizyczne urządzenie do testów

Zwroty
ITestDevice ITestDevice do testowania lub null , jeśli nie jest dostępny

połącz z urządzeniem Tcp

public ITestDevice connectToTcpDevice (String ipAndPort)

Połącz się z urządzeniem za pomocą adb-over-tcp

Ta metoda przydziela nowe urządzenie, które ostatecznie powinno zostać zwolnione przez disconnectFromTcpDevice(com.android.tradefed.device.ITestDevice)

Zwrócone ITestDevice będzie w trybie online, ale może nie odpowiadać.

Pamiętaj, że wykonanie akcji, takiej jak ponowne uruchomienie na urządzeniu podłączonym do protokołu TCP, spowoduje zerwanie połączenia TCP z urządzeniem i spowoduje wyjątek DeviceNotAvailableException

Parametry
ipAndPort String : oryginalny adres IP i port urządzenia, z którym ma zostać nawiązane połączenie

Zwroty
ITestDevice ITestDevice lub null , jeśli nie można utworzyć połączenia TCP

rozłącz z TcpDevice

public boolean disconnectFromTcpDevice (ITestDevice tcpDevice)

Odłącz się od podłączonego urządzenia adb-over-tcp.

Przełącza urządzenie z powrotem w tryb USB i zwalnia je.

Parametry
tcpDevice ITestDevice : urządzenie aktualnie w trybie tcp, wcześniej przydzielone przez connectToTcpDevice(String)

Zwroty
boolean true , jeśli przełączenie do trybu USB powiodło się

wyświetl informacje o urządzeniach

public void displayDevicesInfo (PrintWriter stream, 
                boolean includeStub)

Wygeneruj przyjazny dla użytkownika opis zawierający listę znanych urządzeń, ich stan i wartości dla często używanych opcji IDeviceSelection .

Parametry
stream PrintWriter : ERROR(/PrintWriter) do którego ma zostać wysłany opis

includeStub boolean : Czy wyświetlać również urządzenia pośredniczące.

wykonaćCmdOnAvailableDevice

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

Metoda pomocnicza do wykonywania poleceń powłoki na dostępnym urządzeniu.

Parametry
serial String : Numer seryjny urządzenia.

command String : Komenda powłoki.

timeout long : ilość czasu na wykonanie polecenia.

timeUnit TimeUnit : Jednostka limitu czasu.

Zwroty
CommandResult CommandResult .

wykonaćGlobalAdbCommand

public String executeGlobalAdbCommand (String... cmdArgs)

Wykonaj polecenie adb, które nie jest skierowane do konkretnego urządzenia, np. „połączenie adb”

Zwroty
String std wyjście, jeśli polecenie powiodło się null w przeciwnym razie.

wymuśPrzydzielUrządzenie

public ITestDevice forceAllocateDevice (String serial)

Niegrzecznie przydzielaj urządzenie, nawet jeśli nie jest ono aktualnie dostępne.

Nie przyniesie żadnego efektu, jeśli urządzenie jest już przydzielone.

Parametry
serial String : numer seryjny urządzenia do przydzielenia

Zwroty
ITestDevice ITestDevice lub null , jeśli nie można go przydzielić

darmowe urządzenie

public void freeDevice (ITestDevice device, 
                FreeDeviceState deviceState)

Zwróć urządzenie do puli

Próby zwrotu urządzenia, które nie zostało wcześniej przydzielone, zostaną zignorowane.

Parametry
device ITestDevice : ITestDevice za darmo

deviceState FreeDeviceState : FreeDeviceState . Służy do kontrolowania, czy urządzenie jest zwracane do dostępnej puli urządzeń.

getAdbPath

public String getAdbPath ()

Zwraca ścieżkę do pliku binarnego adb do użycia.

Zwroty
String

pobierz wersjęAdb

public String getAdbVersion ()

Pobierz wersję adb aktualnie używaną przez menedżera urządzeń.

Zwroty
String

getDeviceDescriptor

public DeviceDescriptor getDeviceDescriptor (String serial)

Zwraca DeviceDescriptor z podanym numerem seryjnym.

Parametry
serial String : numer seryjny, który ma uzyskać urządzenie

Zwroty
DeviceDescriptor DeviceDescriptor dla wybranego urządzenia lub null, jeśli numer seryjny nie pasuje do znanego urządzenia.

getFastbootPath

public String getFastbootPath ()

Zwraca ścieżkę do pliku binarnego fastboot do użycia.

Zwroty
String

w tym

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

Zainicjuj menedżera urządzeń. To musi być wywołane raz i tylko raz, zanim zostaną wywołane jakiekolwiek inne metody.

Parametry
globalDeviceFilter IDeviceSelection

globalDeviceMonitors

deviceFactory IManagedTestDeviceFactory

w tym

public void init (IDeviceSelection globalDeviceFilter, 
                 globalDeviceMonitors)

Zainicjuj menedżera urządzeń. To musi być wywołane raz i tylko raz, zanim zostaną wywołane jakiekolwiek inne metody.

Parametry
globalDeviceFilter IDeviceSelection : filtr urządzenia

globalDeviceMonitors

w tym

public void init ()

Zainicjuj menedżera urządzeń. To musi być wywołane raz i tylko raz, zanim zostaną wywołane jakiekolwiek inne metody.

jestEmulatorem

public boolean isEmulator (String serial)

Określ, czy podany numer seryjny reprezentuje emulator

Parametry
serial String

Zwroty
boolean

isFileSystemMountCheckEnabled

public boolean isFileSystemMountCheckEnabled ()

Zwraca, czy powinniśmy sprawdzić w NativeDeviceStateMonitor , czy system plików jest prawidłowo zamontowany.

Zwroty
boolean

isNullDevice

public boolean isNullDevice (String serial)

Określ, czy podany numer seryjny reprezentuje urządzenie zerowe

Parametry
serial String

Zwroty
boolean

zabićEmulator

public void killEmulator (ITestDevice device)

Wyłącz dany emulator.

Blokuje, dopóki emulator nie zniknie z adb. Nie przyniesie żadnego efektu, jeśli emulator nie jest już dostępny.

Parametry
device ITestDevice : ITestDevice reprezentujący emulator do zamknięcia

Rzuty
DeviceNotAvailableException

uruchom emulator

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

Metoda pomocnicza do uruchamiania emulatora.

Uruchomi emulator zgodnie z poleceniem dzwoniącego

Parametry
device ITestDevice : symbol zastępczy ITestDevice reprezentujący przydzielone urządzenie emulatora

bootTimeout long : czas w ms oczekiwania na uruchomienie emulatora

emulatorArgs : argumenty wiersza poleceń do uruchomienia emulatora

Rzuty
DeviceNotAvailableException

listaWszystkieUrządzenia

public  listAllDevices (boolean shortDescriptor)

Zwraca listę DeviceDescriptors dla wszystkich znanych urządzeń

Parametry
shortDescriptor boolean : czy ograniczyć deskryptory do minimum informacji

Zwroty
lista DeviceDescriptor dla wszystkich znanych urządzeń

listaWszystkieUrządzenia

public  listAllDevices ()

Zwraca listę DeviceDescriptors dla wszystkich znanych urządzeń

Zwroty
lista DeviceDescriptor dla wszystkich znanych urządzeń

ponownie połącz urządzenie z Tcp

public ITestDevice reconnectDeviceToTcp (ITestDevice usbDevice)

Metoda pomocnicza, która przełącza dane urządzenie usb w tryb adb-over-tcp, a następnie łączy się z nim przez connectToTcpDevice(String) .

Parametry
usbDevice ITestDevice : urządzenie aktualnie w trybie USB

Zwroty
ITestDevice nowo przydzielone ITestDevice w trybie tcp lub null , jeśli nie można utworzyć połączenia tcp

Rzuty
DeviceNotAvailableException

usuńDeviceMonitor

public void removeDeviceMonitor (IDeviceMonitor mon)

Usuwa wcześniej dodany IDeviceMonitor . Nie ma żadnego efektu, jeśli mon nie został dodany.

Parametry
mon IDeviceMonitor

usuń FastbootListener

public void removeFastbootListener (IDeviceManager.IFastbootListener listener)

Informuje menedżera, że ​​słuchacz nie jest już zainteresowany zmianami stanu fastboot.

uruchom ponownie AdbBridge

public void restartAdbBridge ()

Uruchom ponownie (jeśli wywołano stopAdbBridge() ) adb bridge i usługi zależą od połączeń adb.

stopAdbBridge

public void stopAdbBridge ()

Zatrzymaj most adb, a usługi zależą od połączeń adb.

zakończyć

public void terminate ()

Zatrzymuje usługi monitorowania urządzeń i kończy działanie biblioteki ddm.

Musi to zostać wywołane po zamknięciu aplikacji.

zakończ Monitorowanie urządzeń

public void terminateDeviceMonitor ()

Zatrzymaj monitory urządzeń.

zakończ Odzyskiwanie urządzenia

public void terminateDeviceRecovery ()

Zatrzymuje wątek odzyskiwania urządzenia.

zakończyćTwarde

public void terminateHard (String reason)

Podobnie jak terminateHard() .

Parametry
reason String : opcjonalny powód zakończenia.

zakończyćTwarde

public void terminateHard ()

Podobnie jak terminate() , ale próbuje również wymusić zamknięcie adb.

Dodano funkcję oczekiwania na pierwsze urządzenie

public boolean waitForFirstDeviceAdded (long timeout)

Poczekaj, aż zostanie podłączone pierwsze urządzenie fizyczne. Jeśli urządzenie było wcześniej podłączone, zwraca bezpośrednio True. Jeśli żadne urządzenie nie zostało dodane, zwraca wartość false po przekroczeniu limitu czasu.

Parametry
timeout long : czas oczekiwania w milisekundach przed zwróceniem false.

Zwroty
boolean