DeviceManager
public
class
DeviceManager
extends Object
implements
IDeviceManager
| java.lang.Object | |
| ↳ | com.android.tradefed.device.DeviceManager |
요약
중첩된 클래스 | |
|---|---|
class |
DeviceManager.FastbootDevice
빠른 부팅 모드의 기기 표현입니다. |
상수 | |
|---|---|
String |
UNKNOWN_DISPLAY_STRING
알 수 없는 속성의 표시 문자열 |
필드 | |
|---|---|
protected
DeviceMonitorMultiplexer |
mDvcMon
|
protected
boolean |
mFastbootEnabled
|
공개 생성자 | |
|---|---|
DeviceManager()
DeviceManager는 |
|
공개 메서드 | |
|---|---|
void
|
addAvailableDevice(IDevice stubDevice)
|
void
|
addAvailableNativeDevice(IDevice stubDevice)
|
void
|
addDeviceMonitor(IDeviceMonitor mon)
|
void
|
addFastbootDevice(DeviceManager.FastbootDevice fastbootDevice)
|
void
|
addFastbootListener(IDeviceManager.IFastbootListener listener)
리스너가 fastboot 상태 변경에 관심이 있음을 관리자에게 알립니다. |
void
|
addMonitoringTcpFastbootDevice(String serial, String fastbootSerial)
기기를 fastboot 모니터에 추가 |
ITestDevice
|
allocateDevice(IDeviceSelection options, boolean isTemporary)
특정 기준을 충족하는 테스트 기기를 요청합니다. |
ITestDevice
|
allocateDevice(IDeviceSelection options)
특정 기준을 충족하는 테스트 기기를 요청합니다. |
ITestDevice
|
allocateDevice()
테스트를 위해 실제 기기 요청 |
ITestDevice
|
connectToTcpDevice(String ipAndPort)
adb-over-tcp로 기기에 연결
이 메서드는 새 기기를 할당하며, 이는 결국
반환된 |
boolean
|
disconnectFromTcpDevice(ITestDevice tcpDevice)
adb-over-tcp 연결 기기에서 연결 해제 |
void
|
displayDevicesInfo(PrintWriter stream, boolean includeStub)
알려진 기기, 기기 상태, 흔히 사용되는 |
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()
사용할 빠른 부팅 바이너리의 경로를 반환합니다. |
long
|
getShellCheckCmdTime()
셸 가용성 확인 명령의 제한 시간을 ms 단위로 가져옵니다. |
void
|
init(IDeviceSelection globalDeviceFilter, List<IDeviceMonitor> globalDeviceMonitors, IManagedTestDeviceFactory deviceFactory)
기기 관리자를 초기화합니다. |
void
|
init(IDeviceSelection globalDeviceFilter, List<IDeviceMonitor> globalDeviceMonitors)
기기 관리자를 초기화합니다. |
void
|
init()
기기 관리자를 초기화합니다. |
boolean
|
isEmulator(String serial)
주어진 일련번호가 에뮬레이터를 나타내는지 확인 |
boolean
|
isFileSystemMountCheckEnabled()
파일 시스템이 올바르게 마운트되었는지 |
boolean
|
isNullDevice(String serial)
주어진 일련번호가 null 기기를 나타내는지 확인 |
void
|
killEmulator(ITestDevice device)
지정된 에뮬레이터를 종료합니다. |
void
|
launchEmulator(ITestDevice device, long bootTimeout, IRunUtil runUtil, List<String> emulatorArgs)
에뮬레이터를 실행하는 도우미 메서드 |
List<DeviceDescriptor>
|
listAllDevices(boolean shortDescriptor)
알려진 모든 기기의 DeviceDescriptor 목록을 반환합니다. |
List<DeviceDescriptor>
|
listAllDevices()
알려진 모든 기기의 DeviceDescriptor 목록을 반환합니다. |
ITestDevice
|
reconnectDeviceToTcp(ITestDevice usbDevice)
주어진 USB 기기를 adb-over-tcp 모드로 전환한 후 |
void
|
removeDeviceMonitor(IDeviceMonitor mon)
이전에 추가된 |
void
|
removeFastbootListener(IDeviceManager.IFastbootListener listener)
리스너가 더 이상 fastboot 상태 변경에 관심이 없음을 관리자에게 알립니다. |
void
|
removeMonitoringTcpFastbootDevice(String serial)
|
void
|
restartAdbBridge()
adb 브리지 및 서비스는 adb 연결에 따라 다시 시작합니다 ( |
void
|
stopAdbBridge()
adb 브리지 및 adb 연결에 종속된 서비스를 중지합니다. |
void
|
terminate()
기기 모니터링 서비스를 중지하고 ddm 라이브러리를 종료합니다. |
void
|
terminateDeviceMonitor()
기기 모니터를 중지합니다. |
void
|
terminateDeviceRecovery()
기기 복구 스레드를 중지합니다. |
void
|
terminateHard(String reason)
|
void
|
terminateHard()
|
boolean
|
waitForFirstDeviceAdded(long timeout)
첫 번째 실제 기기가 연결될 때까지 기다립니다. |
상수
UNKNOWN_DISPLAY_STRING
public static final String UNKNOWN_DISPLAY_STRING
알 수 없는 속성의 표시 문자열
상수 값: 'unknown'
필드
mFastbootEnabled
protected boolean mFastbootEnabled
공개 생성자
공개 메서드
addAvailableNativeDevice
public void addAvailableNativeDevice (IDevice stubDevice)
| 매개변수 | |
|---|---|
stubDevice |
IDevice |
addFastbootDevice
public void addFastbootDevice (DeviceManager.FastbootDevice fastbootDevice)
| 매개변수 | |
|---|---|
fastbootDevice |
DeviceManager.FastbootDevice |
addFastbootListener
public void addFastbootListener (IDeviceManager.IFastbootListener listener)
리스너가 fastboot 상태 변경에 관심이 있음을 관리자에게 알립니다.
현재 IDeviceManager는 활성 리스너가 하나 이상 있는 경우에만 패스트부트의 기기를 모니터링합니다.
TODO: 이는 약간의 해킹입니다. 더 나은 해결책을 찾아보세요.
addMonitoringTcpFastbootDevice
public void addMonitoringTcpFastbootDevice (String serial,
String fastbootSerial)기기를 fastboot 모니터에 추가 빠른 부팅 모니터는 'fastboot_serial'을 사용하여 기기와 통신합니다.
| 매개변수 | |
|---|---|
serial |
String: 기기의 일련번호입니다. |
fastbootSerial |
String: 기기의 패스트부트 모드 일련번호입니다. |
allocateDevice
public ITestDevice allocateDevice (IDeviceSelection options, boolean isTemporary)
특정 기준을 충족하는 테스트 기기를 요청합니다.
| 매개변수 | |
|---|---|
options |
IDeviceSelection: 기기가 충족해야 하는 IDeviceSelection입니다. |
isTemporary |
boolean: 임시 NullDevice를 생성해야 하는지 여부입니다. |
| 반환 | |
|---|---|
ITestDevice |
테스트용 ITestDevice 또는 사용할 수 없는 경우 null |
allocateDevice
public ITestDevice allocateDevice (IDeviceSelection options)
특정 기준을 충족하는 테스트 기기를 요청합니다.
| 매개변수 | |
|---|---|
options |
IDeviceSelection: 기기가 충족해야 하는 IDeviceSelection입니다. |
| 반환 | |
|---|---|
ITestDevice |
테스트용 ITestDevice 또는 사용할 수 없는 경우 null |
allocateDevice
public ITestDevice allocateDevice ()
테스트를 위해 실제 기기 요청
| 반환 | |
|---|---|
ITestDevice |
테스트용 ITestDevice 또는 사용할 수 없는 경우 null |
connectToTcpDevice
public ITestDevice connectToTcpDevice (String ipAndPort)
adb-over-tcp로 기기에 연결
이 메서드는 새 기기를 할당하며, 이는 결국 disconnectFromTcpDevice(ITestDevice)를 통해 해제되어야 합니다.
반환된 ITestDevice은 온라인 상태이지만 응답하지 않을 수 있습니다.
tcp 연결 기기에서 재부팅과 같은 작업을 실행하면 기기에 대한 tcp 연결이 끊어지고 DeviceNotAvailableException가 발생합니다.
| 매개변수 | |
|---|---|
ipAndPort |
String: 연결할 기기의 원래 IP 주소 및 포트 |
| 반환 | |
|---|---|
ITestDevice |
TCP 연결을 형성할 수 없는 경우 ITestDevice 또는 null |
disconnectFromTcpDevice
public boolean disconnectFromTcpDevice (ITestDevice tcpDevice)
adb-over-tcp 연결 기기에서 연결 해제
기기를 USB 모드로 다시 전환하고 해제합니다.
| 매개변수 | |
|---|---|
tcpDevice |
ITestDevice: 현재 tcp 모드에 있는 기기, 이전에 connectToTcpDevice(String)을 통해 할당됨 |
| 반환 | |
|---|---|
boolean |
USB 모드로 전환에 성공한 경우 true |
displayDevicesInfo
public void displayDevicesInfo (PrintWriter stream,
boolean includeStub)알려진 기기, 기기 상태, 흔히 사용되는 IDeviceSelection 옵션의 값을 포함하는 사용자 친화적인 설명을 출력합니다.
| 매개변수 | |
|---|---|
stream |
PrintWriter: 설명을 출력할 PrintWriter |
includeStub |
boolean: 스텁 기기도 표시할지 여부입니다. |
executeCmdOnAvailableDevice
public CommandResult executeCmdOnAvailableDevice (String serial, String command, long timeout, TimeUnit timeUnit)
사용 가능한 기기에서 셸 명령어를 실행하는 도우미 메서드입니다.
| 매개변수 | |
|---|---|
serial |
String: 기기 일련번호입니다. |
command |
String: 셸 명령어입니다. |
timeout |
long: 명령어가 완료되는 데 걸리는 시간입니다. |
timeUnit |
TimeUnit: 제한 시간의 단위입니다. |
| 반환 | |
|---|---|
CommandResult |
CommandResult - |
executeGlobalAdbCommand
public String executeGlobalAdbCommand (String... cmdArgs)
특정 기기를 타겟팅하지 않는 adb 명령어를 실행합니다(예: 'adb connect'
| 반환 | |
|---|---|
String |
명령어가 성공하면 std 출력이 반환되고, 그렇지 않으면 null이 반환됩니다. |
forceAllocateDevice
public ITestDevice forceAllocateDevice (String serial)
현재 사용할 수 없는 기기라도 무례하게 할당합니다.
기기가 이미 할당된 경우에는 아무런 효과가 없습니다.
| 매개변수 | |
|---|---|
serial |
String: 할당할 기기 일련번호 |
| 반환 | |
|---|---|
ITestDevice |
ITestDevice 또는 할당할 수 없는 경우 null |
freeDevice
public void freeDevice (ITestDevice device, FreeDeviceState deviceState)
풀에 기기 반환
이전에 할당되지 않은 기기를 반환하려는 시도는 무시됩니다.
| 매개변수 | |
|---|---|
device |
ITestDevice: 해제할 ITestDevice |
deviceState |
FreeDeviceState: FreeDeviceState 기기가 사용 가능한 기기 풀로 반환되는지 제어하는 데 사용됩니다. |
getAdbPath
public String getAdbPath ()
사용할 adb 바이너리의 경로를 반환합니다.
| 반환 | |
|---|---|
String |
|
getAdbVersion
public String getAdbVersion ()
기기 관리자가 현재 사용 중인 adb 버전을 가져옵니다.
| 반환 | |
|---|---|
String |
|
getDeviceDescriptor
public DeviceDescriptor getDeviceDescriptor (String serial)
지정된 일련번호가 있는 DeviceDescriptor를 반환합니다.
| 매개변수 | |
|---|---|
serial |
String: 가져올 기기의 일련번호 |
| 반환 | |
|---|---|
DeviceDescriptor |
선택한 기기의 DeviceDescriptor입니다. 일련번호가 알려진 기기와 일치하지 않으면 null입니다. |
getFastbootPath
public String getFastbootPath ()
사용할 빠른 부팅 바이너리의 경로를 반환합니다.
| 반환 | |
|---|---|
String |
|
getShellCheckCmdTime
public long getShellCheckCmdTime ()
셸 가용성 확인 명령의 제한 시간을 ms 단위로 가져옵니다.
| 반환 | |
|---|---|
long |
|
init
public void init (IDeviceSelection globalDeviceFilter, List<IDeviceMonitor> globalDeviceMonitors, IManagedTestDeviceFactory deviceFactory)
기기 관리자를 초기화합니다. 이 메서드는 다른 메서드가 호출되기 전에 한 번만 호출해야 합니다.
| 매개변수 | |
|---|---|
globalDeviceFilter |
IDeviceSelection |
globalDeviceMonitors |
List |
deviceFactory |
IManagedTestDeviceFactory |
init
public void init (IDeviceSelection globalDeviceFilter, List<IDeviceMonitor> globalDeviceMonitors)
기기 관리자를 초기화합니다. 이 메서드는 다른 메서드가 호출되기 전에 한 번만 호출해야 합니다.
| 매개변수 | |
|---|---|
globalDeviceFilter |
IDeviceSelection: 기기 필터 |
globalDeviceMonitors |
List |
init
public void init ()
기기 관리자를 초기화합니다. 이 메서드는 다른 메서드가 호출되기 전에 한 번만 호출해야 합니다.
isEmulator
public boolean isEmulator (String serial)
주어진 일련번호가 에뮬레이터를 나타내는지 확인
| 매개변수 | |
|---|---|
serial |
String |
| 반환 | |
|---|---|
boolean |
|
isFileSystemMountCheckEnabled
public boolean isFileSystemMountCheckEnabled ()
파일 시스템이 올바르게 마운트되었는지 NativeDeviceStateMonitor에서 확인해야 하는지 여부를 반환합니다.
| 반환 | |
|---|---|
boolean |
|
isNullDevice
public boolean isNullDevice (String serial)
주어진 일련번호가 null 기기를 나타내는지 확인
| 매개변수 | |
|---|---|
serial |
String |
| 반환 | |
|---|---|
boolean |
|
killEmulator
public void killEmulator (ITestDevice device)
지정된 에뮬레이터를 종료합니다.
에뮬레이터가 adb에서 사라질 때까지 차단합니다. 에뮬레이터를 이미 사용할 수 없는 경우에는 아무런 효과가 없습니다.
| 매개변수 | |
|---|---|
device |
ITestDevice: 종료할 에뮬레이터를 나타내는 ITestDevice |
| 생성 값 | |
|---|---|
DeviceNotAvailableException |
|
launchEmulator
public void launchEmulator (ITestDevice device, long bootTimeout, IRunUtil runUtil, List<String> emulatorArgs)
에뮬레이터를 실행하는 도우미 메서드
호출자가 지정한 대로 에뮬레이터를 실행합니다.
| 매개변수 | |
|---|---|
device |
ITestDevice: 할당된 에뮬레이터 기기를 나타내는 자리표시자 ITestDevice |
bootTimeout |
long: 에뮬레이터가 부팅될 때까지 기다리는 시간(밀리초) |
emulatorArgs |
List: 에뮬레이터를 실행하는 명령줄 인수 |
| 생성 값 | |
|---|---|
DeviceNotAvailableException |
|
listAllDevices
public List<DeviceDescriptor> listAllDevices (boolean shortDescriptor)
알려진 모든 기기의 DeviceDescriptor 목록을 반환합니다.
| 매개변수 | |
|---|---|
shortDescriptor |
boolean: 설명자를 최소 정보로 제한할지 여부 |
| 반환 | |
|---|---|
List<DeviceDescriptor> |
알려진 모든 기기의 DeviceDescriptor 목록 |
listAllDevices
public List<DeviceDescriptor> listAllDevices ()
알려진 모든 기기의 DeviceDescriptor 목록을 반환합니다.
| 반환 | |
|---|---|
List<DeviceDescriptor> |
알려진 모든 기기의 DeviceDescriptor 목록 |
reconnectDeviceToTcp
public ITestDevice reconnectDeviceToTcp (ITestDevice usbDevice)
주어진 USB 기기를 adb-over-tcp 모드로 전환한 후 connectToTcpDevice(String)를 통해 연결하는 도우미 메서드입니다.
| 매개변수 | |
|---|---|
usbDevice |
ITestDevice: 현재 USB 모드에 있는 기기 |
| 반환 | |
|---|---|
ITestDevice |
tcp 모드에서 새로 할당된 ITestDevice 또는 tcp 연결을 형성할 수 없는 경우 null |
| 생성 값 | |
|---|---|
DeviceNotAvailableException |
|
removeDeviceMonitor
public void removeDeviceMonitor (IDeviceMonitor mon)
이전에 추가된 IDeviceMonitor를 삭제합니다. mon이 추가되지 않은 경우 아무런 효과가 없습니다.
| 매개변수 | |
|---|---|
mon |
IDeviceMonitor |
removeFastbootListener
public void removeFastbootListener (IDeviceManager.IFastbootListener listener)
리스너가 더 이상 fastboot 상태 변경에 관심이 없음을 관리자에게 알립니다.
removeMonitoringTcpFastbootDevice
public void removeMonitoringTcpFastbootDevice (String serial)
| 매개변수 | |
|---|---|
serial |
String |
restartAdbBridge
public void restartAdbBridge ()
adb 브리지 및 서비스는 adb 연결에 따라 다시 시작합니다 (stopAdbBridge()가 호출된 경우).
stopAdbBridge
public void stopAdbBridge ()
adb 브리지 및 adb 연결에 종속된 서비스를 중지합니다.
해지하다 : 폐쇄하다
public void terminate ()
기기 모니터링 서비스를 중지하고 ddm 라이브러리를 종료합니다.
애플리케이션 종료 시 호출해야 합니다.
terminateDeviceMonitor
public void terminateDeviceMonitor ()
기기 모니터를 중지합니다.
terminateDeviceRecovery
public void terminateDeviceRecovery ()
기기 복구 스레드를 중지합니다.
terminateHard
public void terminateHard (String reason)
terminateHard()와 같은 음악
| 매개변수 | |
|---|---|
reason |
String: 종료에 대해 제공된 이유(선택사항)입니다. |
waitForFirstDeviceAdded
public boolean waitForFirstDeviceAdded (long timeout)
첫 번째 실제 기기가 연결될 때까지 기다립니다. 기기가 이전에 연결된 적이 있으면 True를 직접 반환합니다. 추가된 기기가 없으면 제한 시간 후 false를 반환합니다.
| 매개변수 | |
|---|---|
timeout |
long: false를 반환하기 전에 대기할 시간(밀리초)입니다. |
| 반환 | |
|---|---|
boolean |
|