Диспетчер устройств

public class DeviceManager
extends Object implements IDeviceManager

java.lang.Объект
com.android.tradefed.device.DeviceManager


Резюме

Вложенные классы

class DeviceManager.FastbootDevice

Представление устройства в режиме Fastboot.

Поля

public static final String UNKNOWN_DISPLAY_STRING

Строка отображения для неизвестных свойств

protected DeviceMonitorMultiplexer mDvcMon

protected boolean mFastbootEnabled

Публичные конструкторы

DeviceManager ()

DeviceManager должен быть получен из GlobalConfiguration .

Публичные методы

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

Добавляет IDeviceMonitor

void addFastbootListener ( IDeviceManager.IFastbootListener listener)

Информирует менеджера о том, что прослушиватель заинтересован в изменении состояния fastboot.

void addMonitoringTcpFastbootDevice (String serial, String fastboot_serial)

Добавьте устройство в монитор fastboot.

ITestDevice allocateDevice ( IDeviceSelection options, boolean isTemporary)

Запросите устройство для тестирования, которое соответствует определенным критериям.

ITestDevice allocateDevice ( IDeviceSelection options)

Запросите устройство для тестирования, которое соответствует определенным критериям.

ITestDevice allocateDevice ()

Запрос физического устройства для тестирования

ITestDevice connectToTcpDevice (String ipAndPort)

Подключиться к устройству через adb-over-tcp

Этот метод выделяет новое устройство, которое в конечном итоге должно быть освобождено через disconnectFromTcpDevice(com.android.tradefed.device.ITestDevice)

ITestDevice будет подключен к сети, но может не отвечать.

boolean disconnectFromTcpDevice (ITestDevice tcpDevice)

Отключиться от устройства, подключенного через adb-over-tcp.

void displayDevicesInfo (PrintWriter stream, boolean includeStub)

Выведите понятное описание, содержащее список известных устройств, их состояние и значения часто используемых параметров IDeviceSelection .

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

Вспомогательный метод для выполнения команды оболочки на доступном устройстве.

String executeGlobalAdbCommand (String... cmdArgs)

Выполните команду adb, не предназначенную для конкретного устройства, например.

ITestDevice forceAllocateDevice (String serial)

Грубо выделить устройство, даже если оно в данный момент недоступно.

void freeDevice (ITestDevice device, FreeDeviceState deviceState)

Вернуть устройство в пул

Попытки вернуть устройство, которое ранее не было выделено, будут игнорироваться.

String getAdbPath ()

Возвращает путь к используемому двоичному файлу adb.

String getAdbVersion ()

Получите версию adb, используемую в настоящее время диспетчером устройств.

DeviceDescriptor getDeviceDescriptor (String serial)

Возвращает DeviceDescriptor с заданным серийным номером.

String getFastbootPath ()

Возвращает путь к используемому двоичному файлу fastboot.

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

Инициализируйте диспетчер устройств.

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

Инициализируйте диспетчер устройств.

void init ()

Инициализируйте диспетчер устройств.

boolean isEmulator (String serial)

Определите, представляет ли данный серийный номер эмулятор

boolean isFileSystemMountCheckEnabled ()

Возвращает, должны ли мы проверять в NativeDeviceStateMonitor правильность монтирования файловой системы.

boolean isNullDevice (String serial)

Определите, представляет ли данный серийный номер нулевое устройство

void killEmulator (ITestDevice device)

Выключите данный эмулятор.

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

Вспомогательный метод для запуска эмулятора.

listAllDevices ()

Возвращает список DeviceDescriptors для всех известных устройств.

ITestDevice reconnectDeviceToTcp (ITestDevice usbDevice)

Вспомогательный метод, который переключает данное USB-устройство в режим adb-over-tcp, а затем подключается к нему через connectToTcpDevice(String) .

void removeDeviceMonitor ( IDeviceMonitor mon)

Удаляет ранее добавленный IDeviceMonitor .

void removeFastbootListener ( IDeviceManager.IFastbootListener listener)

Информирует менеджера о том, что прослушиватель больше не заинтересован в изменении состояния fastboot.

void restartAdbBridge ()

Перезапуск (если была stopAdbBridge() ) adb bridge и сервисы зависят от соединений adb.

void stopAdbBridge ()

Остановите мост adb и службы, зависящие от соединений adb.

void terminate ()

Останавливает службы мониторинга устройств и завершает работу библиотеки ddm.

void terminateDeviceMonitor ()

Остановите мониторы устройств.

void terminateDeviceRecovery ()

Останавливает поток восстановления устройства.

void terminateHard (String reason)

Как и terminateHard() .

void terminateHard ()

Подобно terminate() , но также пытается принудительно закрыть adb.

boolean waitForFirstDeviceAdded (long timeout)

Подождите, пока не будет подключено первое физическое устройство.

Поля

НЕИЗВЕСТНО_DISPLAY_STRING

public static final String UNKNOWN_DISPLAY_STRING

Строка отображения для неизвестных свойств

мдвкмон

protected DeviceMonitorMultiplexer mDvcMon

mFastbootEnabled

protected boolean mFastbootEnabled

Публичные конструкторы

Диспетчер устройств

public DeviceManager ()

DeviceManager должен быть получен из GlobalConfiguration .

Публичные методы

addAvailableDevice

public void addAvailableDevice (IDevice stubDevice)

Параметры
stubDevice IDevice

addDeviceMonitor

public void addDeviceMonitor (IDeviceMonitor mon)

Добавляет IDeviceMonitor

Параметры
mon IDeviceMonitor

добавить FastbootListener

public void addFastbootListener (IDeviceManager.IFastbootListener listener)

Информирует менеджера о том, что прослушиватель заинтересован в изменении состояния fastboot.

В настоящее время IDeviceManager будет отслеживать устройства в fastboot только в том случае, если есть один или несколько активных слушателей.

TODO: это небольшой лайфхак — найдите лучшее решение

addMonitoringTcpFastbootDevice

public void addMonitoringTcpFastbootDevice (String serial, 
                String fastboot_serial)

Добавьте устройство в монитор fastboot. Монитор fastboot будет использовать «fastboot_serial» для связи с устройством.

Параметры
serial String : серийный номер устройства.

fastboot_serial String : серийный номер режима быстрой загрузки устройства.

выделитьустройство

public ITestDevice allocateDevice (IDeviceSelection options, 
                boolean isTemporary)

Запросите устройство для тестирования, которое соответствует определенным критериям.

Параметры
options IDeviceSelection : IDeviceSelection , которому должно соответствовать устройство.

isTemporary boolean : следует ли создавать временное NullDevice.

Возвращает
ITestDevice ITestDevice для тестирования или null , если он недоступен

выделитьустройство

public ITestDevice allocateDevice (IDeviceSelection options)

Запросите устройство для тестирования, которое соответствует определенным критериям.

Параметры
options IDeviceSelection : IDeviceSelection , которому должно соответствовать устройство.

Возвращает
ITestDevice ITestDevice для тестирования или null , если он недоступен

выделитьустройство

public ITestDevice allocateDevice ()

Запрос физического устройства для тестирования

Возвращает
ITestDevice ITestDevice для тестирования или null , если он недоступен

connectToTcpDevice

public ITestDevice connectToTcpDevice (String ipAndPort)

Подключиться к устройству через adb-over-tcp

Этот метод выделяет новое устройство, которое в конечном итоге должно быть освобождено через disconnectFromTcpDevice(com.android.tradefed.device.ITestDevice)

ITestDevice будет подключен к сети, но может не отвечать.

Обратите внимание, что выполнение таких действий, как перезагрузка на устройстве, подключенном по протоколу TCP, разорвет подключение по протоколу TCP к устройству и приведет к DeviceNotAvailableException

Параметры
ipAndPort String : исходный IP-адрес и порт устройства для подключения.

Возвращает
ITestDevice ITestDevice или null , если TCP-соединение не может быть сформировано

отключение от TCPDevice

public boolean disconnectFromTcpDevice (ITestDevice tcpDevice)

Отключиться от устройства, подключенного через adb-over-tcp.

Переключает устройство обратно в режим USB и освобождает его.

Параметры
tcpDevice ITestDevice : устройство, находящееся в данный момент в режиме tcp, ранее выделенное через connectToTcpDevice(String)

Возвращает
boolean true , если переключение в режим USB прошло успешно

displayDevicesInfo

public void displayDevicesInfo (PrintWriter stream, 
                boolean includeStub)

Выведите понятное описание, содержащее список известных устройств, их состояние и значения часто используемых параметров IDeviceSelection .

Параметры
stream PrintWriter : ERROR(/PrintWriter) для вывода описания в

includeStub boolean : отображать ли также устройства-заглушки.

выполнитьCmdOnAvailableDevice

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

Вспомогательный метод для выполнения команды оболочки на доступном устройстве.

Параметры
serial String : серийный номер устройства.

command String : команда оболочки.

timeout long : количество времени для выполнения команды.

timeUnit TimeUnit : единица времени ожидания.

Возвращает
CommandResult CommandResult .

выполнить глобаладбкомманд

public String executeGlobalAdbCommand (String... cmdArgs)

Выполните команду adb, не предназначенную для конкретного устройства, например. 'адб подключить'

Возвращает
String вывод std, если команда завершается успешно, в противном случае null.

ForceAllocateDevice

public ITestDevice forceAllocateDevice (String serial)

Грубо выделить устройство, даже если оно в данный момент недоступно.

Не будет иметь никакого эффекта, если устройство уже выделено.

Параметры
serial String : серийный номер устройства для выделения

Возвращает
ITestDevice ITestDevice или null , если он не может быть выделен

бесплатное устройство

public void freeDevice (ITestDevice device, 
                FreeDeviceState deviceState)

Вернуть устройство в пул

Попытки вернуть устройство, которое ранее не было выделено, будут игнорироваться.

Параметры
device ITestDevice : ITestDevice для бесплатного использования

deviceState FreeDeviceState : FreeDeviceState . Используется для управления возвратом устройства в доступный пул устройств.

получитьAdbPath

public String getAdbPath ()

Возвращает путь к используемому двоичному файлу adb.

Возвращает
String

получитьAdbVersion

public String getAdbVersion ()

Получите версию adb, используемую в настоящее время диспетчером устройств.

Возвращает
String

получитьDeviceDescriptor

public DeviceDescriptor getDeviceDescriptor (String serial)

Возвращает DeviceDescriptor с заданным серийным номером.

Параметры
serial String : серийный номер для получения устройства

Возвращает
DeviceDescriptor DeviceDescriptor для выбранного устройства или null, если серийный номер не соответствует известному устройству.

получитьFastbootPath

public String getFastbootPath ()

Возвращает путь к используемому двоичному файлу fastboot.

Возвращает
String

в этом

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

Инициализируйте диспетчер устройств. Это должно быть вызвано один раз и только один раз, прежде чем будут вызваны любые другие методы.

Параметры
globalDeviceFilter IDeviceSelection

globalDeviceMonitors

deviceFactory IManagedTestDeviceFactory

в этом

public void init (IDeviceSelection globalDeviceFilter, 
                 globalDeviceMonitors)

Инициализируйте диспетчер устройств. Это должно быть вызвано один раз и только один раз, прежде чем будут вызваны любые другие методы.

Параметры
globalDeviceFilter IDeviceSelection : фильтр устройств

globalDeviceMonitors

в этом

public void init ()

Инициализируйте диспетчер устройств. Это должно быть вызвано один раз и только один раз, прежде чем будут вызваны любые другие методы.

эмулятор

public boolean isEmulator (String serial)

Определите, представляет ли данный серийный номер эмулятор

Параметры
serial String

Возвращает
boolean

isFileSystemMountCheckEnabled

public boolean isFileSystemMountCheckEnabled ()

Возвращает, должны ли мы проверять в NativeDeviceStateMonitor правильность монтирования файловой системы.

Возвращает
boolean

isNullDevice

public boolean isNullDevice (String serial)

Определите, представляет ли данный серийный номер нулевое устройство

Параметры
serial String

Возвращает
boolean

killЭмулятор

public void killEmulator (ITestDevice device)

Выключите данный эмулятор.

Блокирует до тех пор, пока эмулятор не исчезнет из adb. Не будет иметь никакого эффекта, если эмулятор уже недоступен.

Параметры
device ITestDevice : ITestDevice представляющий эмулятор для завершения работы.

Броски
DeviceNotAvailableException

запуск эмулятора

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

Вспомогательный метод для запуска эмулятора.

Запустит эмулятор, как указано вызывающей стороной

Параметры
device ITestDevice : заполнитель ITestDevice представляющий выделенное устройство эмулятора.

bootTimeout long : время ожидания загрузки эмулятора в мс.

emulatorArgs : аргументы командной строки для запуска эмулятора

Броски
DeviceNotAvailableException

списокВсеустройства

public  listAllDevices ()

Возвращает список DeviceDescriptors для всех известных устройств.

Возвращает
список DeviceDescriptor для всех известных устройств

переподключить устройство к TCP

public ITestDevice reconnectDeviceToTcp (ITestDevice usbDevice)

Вспомогательный метод, который переключает данное USB-устройство в режим adb-over-tcp, а затем подключается к нему через connectToTcpDevice(String) .

Параметры
usbDevice ITestDevice : устройство, находящееся в данный момент в режиме USB

Возвращает
ITestDevice вновь выделенный ITestDevice в режиме tcp или null , если соединение tcp не может быть сформировано

Броски
DeviceNotAvailableException

removeDeviceMonitor

public void removeDeviceMonitor (IDeviceMonitor mon)

Удаляет ранее добавленный IDeviceMonitor . Не действует, если mon не добавлен.

Параметры
mon IDeviceMonitor

удалить FastbootListener

public void removeFastbootListener (IDeviceManager.IFastbootListener listener)

Информирует менеджера о том, что прослушиватель больше не заинтересован в изменении состояния fastboot.

перезапуститьAdbBridge

public void restartAdbBridge ()

Перезапуск (если была stopAdbBridge() ) adb bridge и сервисы зависят от соединений adb.

стопAdbBridge

public void stopAdbBridge ()

Остановите мост adb и службы, зависящие от соединений adb.

прекращать

public void terminate ()

Останавливает службы мониторинга устройств и завершает работу библиотеки ddm.

Это должно быть вызвано после закрытия приложения.

TerminateDeviceMonitor

public void terminateDeviceMonitor ()

Остановите мониторы устройств.

прекратитьустройствовосстановления

public void terminateDeviceRecovery ()

Останавливает поток восстановления устройства.

прекратитьжесткий

public void terminateHard (String reason)

Как и terminateHard() .

Параметры
reason String : необязательная причина прекращения.

прекратитьжесткий

public void terminateHard ()

Подобно terminate() , но также пытается принудительно закрыть adb.

ждатьForFirstDeviceAdded

public boolean waitForFirstDeviceAdded (long timeout)

Подождите, пока не будет подключено первое физическое устройство. Если устройство было подключено ранее, оно возвращает значение True. Если устройство не было добавлено, по истечении времени ожидания возвращается значение false.

Параметры
timeout long : время ожидания в миллисекундах перед возвратом false.

Возвращает
boolean