IDeviceManager
public interface IDeviceManager
com.android.tradefed.device.IDeviceManager |
테스트에 사용할 수 있는 장치 집합을 관리하기 위한 인터페이스입니다.
요약
중첩 클래스 | |
---|---|
interface | IDeviceManager.IFastbootListener fastboot 상태 변경에 대한 리스너. |
공개 메서드 | |
---|---|
abstract void | addDeviceMonitor ( IDeviceMonitor mon) |
abstract void | addFastbootListener ( IDeviceManager.IFastbootListener listener) 리스너가 fastboot 상태 변경에 관심이 있음을 관리자에게 알립니다. |
abstract void | addMonitoringTcpFastbootDevice (String serial, String fastboot_serial) fastboot 모니터에 장치를 추가합니다. |
abstract ITestDevice | allocateDevice ( IDeviceSelection options, boolean isTemporary) 특정 기준을 충족하는 테스트용 장치를 요청합니다. |
abstract ITestDevice | allocateDevice ( IDeviceSelection options) 특정 기준을 충족하는 테스트용 장치를 요청합니다. |
abstract ITestDevice | allocateDevice () 테스트를 위한 물리적 장치 요청 |
abstract ITestDevice | connectToTcpDevice (String ipAndPort) adb-over-tcp를 사용하여 장치에 연결 이 메서드는 새 장치를 할당하며 결국disconnectFromTcpDevice(com.android.tradefed.device.ITestDevice) 를 통해 해제되어야 합니다. 반환 ITestDevice 는 온라인 상태가 되지만 응답하지 않을 수 있습니다. |
abstract boolean | disconnectFromTcpDevice (ITestDevice tcpDevice) adb-over-tcp 연결 장치에서 연결을 끊습니다. |
abstract void | displayDevicesInfo (PrintWriter printWriter, boolean includeStub) 알려진 장치 목록, 장치 상태 및 일반적으로 사용되는 |
abstract CommandResult | executeCmdOnAvailableDevice (String serial, String command, long timeout, TimeUnit timeUnit) 사용 가능한 장치에서 셸 명령을 실행하는 도우미 메서드입니다. |
abstract ITestDevice | forceAllocateDevice (String serial) 현재 사용할 수 없는 경우에도 무례하게 장치를 할당합니다. |
abstract void | freeDevice (ITestDevice device, FreeDeviceState state) 장치를 풀로 반환 이전에 할당되지 않은 장치를 반환하려는 시도는 무시됩니다. |
abstract String | getAdbPath () 사용할 adb 바이너리의 경로를 반환합니다. |
abstract String | getAdbVersion () 장치 관리자에서 현재 사용 중인 adb 버전을 가져옵니다. |
abstract DeviceDescriptor | getDeviceDescriptor (String serial) 주어진 시리얼과 함께 DeviceDescriptor를 반환합니다. |
abstract String | getFastbootPath () 사용할 fastboot 바이너리의 경로를 반환합니다. |
abstract void | init ( IDeviceSelection globalDeviceFilter, deviceMonitors) init ( IDeviceSelection globalDeviceFilter, deviceMonitors) 장치 필터를 사용하여 장치 관리자를 초기화합니다. |
abstract void | init () 장치 관리자를 초기화합니다. |
abstract boolean | isEmulator (String serial) 주어진 시리얼이 에뮬레이터를 나타내는지 확인 |
default boolean | isFileSystemMountCheckEnabled () 파일 시스템이 제대로 마운트되었는지 |
abstract boolean | isNullDevice (String serial) 주어진 시리얼이 널 디바이스를 나타내는지 확인 |
abstract void | killEmulator (ITestDevice device) 주어진 에뮬레이터를 종료합니다. |
abstract void | launchEmulator (ITestDevice device, long bootTimeout, IRunUtil runUtil, emulatorArgs) launchEmulator (ITestDevice device, long bootTimeout, IRunUtil runUtil, emulatorArgs) 에뮬레이터를 시작하는 도우미 메서드입니다. |
abstract | listAllDevices () 알려진 모든 장치에 대한 DeviceDescriptor 목록을 반환합니다. |
abstract ITestDevice | reconnectDeviceToTcp (ITestDevice usbDevice) 주어진 USB 장치를 adb-over-tcp 모드로 전환한 다음 |
abstract void | removeDeviceMonitor ( IDeviceMonitor mon) 이전에 추가한 |
abstract void | removeFastbootListener ( IDeviceManager.IFastbootListener listener) 리스너가 더 이상 fastboot 상태 변경에 관심이 없음을 관리자에게 알립니다. |
abstract void | restartAdbBridge () 재시작( |
abstract void | stopAdbBridge () adb 브리지를 중지하고 서비스는 adb 연결에 따라 다릅니다. |
abstract void | terminate () 장치 모니터링 서비스를 중지하고 ddm 라이브러리를 종료합니다. |
abstract void | terminateDeviceMonitor () 장치 모니터를 중지합니다. |
abstract void | terminateDeviceRecovery () 장치 복구 스레드를 중지합니다. |
default void | terminateHard (String reason) |
abstract void | terminateHard () |
abstract boolean | waitForFirstDeviceAdded (long timeout) 첫 번째 물리적 장치가 연결될 때까지 기다립니다. |
공개 메서드
addFastbootListener
public abstract void addFastbootListener (IDeviceManager.IFastbootListener listener)
리스너가 fastboot 상태 변경에 관심이 있음을 관리자에게 알립니다.
현재IDeviceManager
는 하나 이상의 활성 수신기가 있는 경우 fastboot의 장치만 모니터링합니다. TODO: 이것은 약간의 해킹입니다 - 더 나은 솔루션 찾기 addMonitoringTcpFastboot장치
public abstract void addMonitoringTcpFastbootDevice (String serial, String fastboot_serial)
fastboot 모니터에 장치를 추가합니다. fastboot 모니터는 'fastboot_serial'을 사용하여 장치와 통신합니다.
매개변수 | |
---|---|
serial | String : 장치의 일련 번호입니다. |
fastboot_serial | String : 장치의 빠른 부팅 모드 일련 번호입니다. |
할당 장치
public abstract ITestDevice allocateDevice (IDeviceSelection options, boolean isTemporary)
특정 기준을 충족하는 테스트용 장치를 요청합니다.
매개변수 | |
---|---|
options | IDeviceSelection : 장치가 충족해야 하는 IDeviceSelection 입니다. |
isTemporary | boolean : 임시 NullDevice 생성 여부. |
보고 | |
---|---|
ITestDevice | 테스트를 위한 ITestDevice 또는 사용할 수 없는 경우 null |
할당 장치
public abstract ITestDevice allocateDevice (IDeviceSelection options)
특정 기준을 충족하는 테스트용 장치를 요청합니다.
매개변수 | |
---|---|
options | IDeviceSelection : 장치가 충족해야 하는 IDeviceSelection 입니다. |
보고 | |
---|---|
ITestDevice | 테스트를 위한 ITestDevice 또는 사용할 수 없는 경우 null |
할당 장치
public abstract ITestDevice allocateDevice ()
테스트를 위한 물리적 장치 요청
보고 | |
---|---|
ITestDevice | 테스트를 위한 ITestDevice 또는 사용할 수 없는 경우 null |
connectToTcpDevice
public abstract ITestDevice connectToTcpDevice (String ipAndPort)
adb-over-tcp를 사용하여 장치에 연결
이 메서드는 새 장치를 할당하며 결국disconnectFromTcpDevice(com.android.tradefed.device.ITestDevice)
를 통해 해제되어야 합니다. 반환 ITestDevice
는 온라인 상태가 되지만 응답하지 않을 수 있습니다. tcp 연결 장치에서 재부팅과 같은 작업을 수행하면 장치에 대한 tcp 연결이 끊어 DeviceNotAvailableException
이 발생합니다.매개변수 | |
---|---|
ipAndPort | String : 연결할 장치의 원래 IP 주소 및 포트 |
보고 | |
---|---|
ITestDevice | ITestDevice 또는 tcp 연결을 구성할 수 없는 경우 null |
TcpDevice에서 연결 해제
public abstract boolean disconnectFromTcpDevice (ITestDevice tcpDevice)
adb-over-tcp 연결 장치에서 연결을 끊습니다.
장치를 다시 USB 모드로 전환하고 해제합니다.매개변수 | |
---|---|
tcpDevice | ITestDevice : 이전에 connectToTcpDevice(String) 를 통해 할당된 현재 tcp 모드에 있는 장치 |
보고 | |
---|---|
boolean | USB 모드로의 전환이 성공한 경우 true |
디스플레이 장치 정보
public abstract void displayDevicesInfo (PrintWriter printWriter, boolean includeStub)
알려진 장치 목록, 장치 상태 및 일반적으로 사용되는 IDeviceSelection
옵션 값이 포함된 사용자 친화적인 설명을 출력합니다.
매개변수 | |
---|---|
printWriter | PrintWriter : 설명을 출력할 ERROR(/PrintWriter) |
includeStub | boolean : 스텁 장치도 표시할지 여부. |
실행CmdOnAvailableDevice
public abstract CommandResult executeCmdOnAvailableDevice (String serial, String command, long timeout, TimeUnit timeUnit)
사용 가능한 장치에서 셸 명령을 실행하는 도우미 메서드입니다.
매개변수 | |
---|---|
serial | String : 디바이스 시리얼. |
command | String : 쉘 명령입니다. |
timeout | long : 명령이 완료될 때까지의 시간입니다. |
timeUnit | TimeUnit : 타임아웃의 단위. |
보고 | |
---|---|
CommandResult | CommandResult . |
강제 할당 장치
public abstract ITestDevice forceAllocateDevice (String serial)
현재 사용할 수 없는 경우에도 무례하게 장치를 할당합니다.
장치가 이미 할당된 경우에는 효과가 없습니다.매개변수 | |
---|---|
serial | String : 할당할 디바이스 시리얼 |
보고 | |
---|---|
ITestDevice | ITestDevice 또는 할당할 수 없는 경우 null |
무료 장치
public abstract void freeDevice (ITestDevice device, FreeDeviceState state)
장치를 풀로 반환
이전에 할당되지 않은 장치를 반환하려는 시도는 무시됩니다.매개변수 | |
---|---|
device | ITestDevice : 해제할 ITestDevice |
state | FreeDeviceState : FreeDeviceState . 장치가 사용 가능한 장치 풀로 반환되는지 제어하는 데 사용됩니다. |
getAdbPath
public abstract String getAdbPath ()
사용할 adb 바이너리의 경로를 반환합니다.
보고 | |
---|---|
String |
getAdbVersion
public abstract String getAdbVersion ()
장치 관리자에서 현재 사용 중인 adb 버전을 가져옵니다.
보고 | |
---|---|
String |
getDeviceDescriptor
public abstract DeviceDescriptor getDeviceDescriptor (String serial)
주어진 시리얼과 함께 DeviceDescriptor를 반환합니다.
매개변수 | |
---|---|
serial | String : 가져올 장치의 일련 번호 |
보고 | |
---|---|
DeviceDescriptor | 선택된 장치의 DeviceDescriptor , 또는 직렬이 알려진 장치와 일치하지 않는 경우 null입니다. |
getFastboot경로
public abstract String getFastbootPath ()
사용할 fastboot 바이너리의 경로를 반환합니다.
보고 | |
---|---|
String |
초기화
public abstract void init (IDeviceSelection globalDeviceFilter,deviceMonitors)
장치 필터를 사용하여 장치 관리자를 초기화합니다. 이 필터는 DeviceManager가 연결된 특정 장치를 무시하도록 지시하는 데 사용할 수 있습니다.
매개변수 | |
---|---|
globalDeviceFilter | IDeviceSelection : 장치 필터 |
deviceMonitors |
초기화
public abstract void init ()
장치 관리자를 초기화합니다. 이것은 다른 메소드가 호출되기 전에 한 번만 호출되어야 합니다.
isEmulator
public abstract boolean isEmulator (String serial)
주어진 시리얼이 에뮬레이터를 나타내는지 확인
매개변수 | |
---|---|
serial | String |
보고 | |
---|---|
boolean |
isFileSystemMountCheckEnabled
public boolean isFileSystemMountCheckEnabled ()
파일 시스템이 제대로 마운트되었는지 NativeDeviceStateMonitor
에서 확인해야 하는지 여부를 반환합니다.
보고 | |
---|---|
boolean |
isNullDevice
public abstract boolean isNullDevice (String serial)
주어진 시리얼이 널 디바이스를 나타내는지 확인
매개변수 | |
---|---|
serial | String |
보고 | |
---|---|
boolean |
kill에뮬레이터
public abstract void killEmulator (ITestDevice device)
주어진 에뮬레이터를 종료합니다.
에뮬레이터가 adb에서 사라질 때까지 차단됩니다. 에뮬레이터를 이미 사용할 수 없는 경우 효과가 없습니다.매개변수 | |
---|---|
device | ITestDevice : 종료할 에뮬레이터를 나타내는 ITestDevice |
던지다 | |
---|---|
DeviceNotAvailableException | 에뮬레이터가 종료되지 않는 경우 |
런치에뮬레이터
public abstract void launchEmulator (ITestDevice device, long bootTimeout, IRunUtil runUtil,emulatorArgs)
에뮬레이터를 시작하는 도우미 메서드입니다.
호출자가 지정한 대로 에뮬레이터를 시작합니다.매개변수 | |
---|---|
device | ITestDevice : 할당된 에뮬레이터 장치를 나타내는 자리 표시자 ITestDevice |
bootTimeout | long : 에뮬레이터가 부팅될 때까지 대기하는 시간(ms) |
emulatorArgs |
던지다 | |
---|---|
DeviceNotAvailableException | 에뮬레이터가 부팅되지 않거나 온라인 상태가 되지 않는 경우 |
listAllDevices
public abstractlistAllDevices ()
알려진 모든 장치에 대한 DeviceDescriptor 목록을 반환합니다.
보고 | |
---|---|
알려진 모든 장치에 대한 DeviceDescriptor 목록 |
재연결장치ToTcp
public abstract ITestDevice reconnectDeviceToTcp (ITestDevice usbDevice)
주어진 USB 장치를 adb-over-tcp 모드로 전환한 다음 connectToTcpDevice(String)
를 통해 연결하는 도우미 메서드입니다.
매개변수 | |
---|---|
usbDevice | ITestDevice : 현재 USB 모드에 있는 장치 |
보고 | |
---|---|
ITestDevice | tcp 모드에서 새로 할당된 ITestDevice 또는 tcp 연결을 구성할 수 없는 경우 null |
던지다 | |
---|---|
DeviceNotAvailableException | usbDevice 와의 연결이 끊어져 복구할 수 없는 경우 |
장치 모니터 제거
public abstract void removeDeviceMonitor (IDeviceMonitor mon)
이전에 추가한 IDeviceMonitor
를 제거합니다. mon이 추가되지 않은 경우 효과가 없습니다.
매개변수 | |
---|---|
mon | IDeviceMonitor |
빠른 부팅 수신기 제거
public abstract void removeFastbootListener (IDeviceManager.IFastbootListener listener)
리스너가 더 이상 fastboot 상태 변경에 관심이 없음을 관리자에게 알립니다.
다시 시작AdBridge
public abstract void restartAdbBridge ()
재시작( stopAdbBridge()
가 호출된 경우) adb 브리지 및 서비스는 adb 연결에 의존합니다.
stopAdBridge
public abstract void stopAdbBridge ()
adb 브리지를 중지하고 서비스는 adb 연결에 따라 다릅니다.
끝내다
public abstract void terminate ()
장치 모니터링 서비스를 중지하고 ddm 라이브러리를 종료합니다.
애플리케이션 종료 시 호출해야 합니다.또한보십시오:
장치 모니터를 종료
public abstract void terminateDeviceMonitor ()
장치 모니터를 중지합니다.
종료 장치 복구
public abstract void terminateDeviceRecovery ()
장치 복구 스레드를 중지합니다.
터미네이터
public void terminateHard (String reason)
terminateHard()
처럼.
매개변수 | |
---|---|
reason | String : 종료에 대한 선택적 이유입니다. |
waitForFirstDevice 추가됨
public abstract boolean waitForFirstDeviceAdded (long timeout)
첫 번째 물리적 장치가 연결될 때까지 기다립니다. 장치가 이전에 연결되었다면 바로 True를 반환합니다. 장치가 추가되지 않은 경우 시간 초과 후 false를 반환합니다.
매개변수 | |
---|---|
timeout | long : false를 반환하기 전에 대기하는 시간(밀리초)입니다. |
보고 | |
---|---|
boolean |
Content and code samples on this page are subject to the licenses described in the Content License. Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
Last updated 2022-07-06 UTC.