기기 관리자

public class DeviceManager
extends Object implements IDeviceManager

java.lang.Object
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 addFastbootDevice ( DeviceManager.FastbootDevice fastbootDevice)
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)

해당 직렬이 null 장치를 나타내는지 확인

void killEmulator ( ITestDevice device)

지정된 에뮬레이터를 종료합니다.

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

에뮬레이터를 시작하는 도우미 메서드입니다.

listAllDevices (boolean shortDescriptor)

알려진 모든 장치에 대한 DeviceDescriptor 목록을 반환합니다.

listAllDevices ()

알려진 모든 장치에 대한 DeviceDescriptor 목록을 반환합니다.

ITestDevice reconnectDeviceToTcp ( ITestDevice usbDevice)

지정된 USB 장치를 adb-over-tcp 모드로 전환한 다음 connectToTcpDevice(String) 통해 해당 장치에 연결하는 도우미 메서드입니다.

void removeDeviceMonitor ( IDeviceMonitor mon)

이전에 추가된 IDeviceMonitor 제거합니다.

void removeFastbootListener ( IDeviceManager.IFastbootListener listener)

리스너가 더 이상 빠른 부팅 상태 변경에 관심이 없음을 관리자에게 알립니다.

void restartAdbBridge ()

다시 시작하세요( stopAdbBridge() 호출된 경우) adb 브리지와 서비스는 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)

첫 번째 물리적 장치가 연결될 때까지 기다립니다.

필드

UNKNOWN_DISPLAY_STRING

public static final String UNKNOWN_DISPLAY_STRING

알 수 없는 속성에 대한 표시 문자열

mDvcMon

protected DeviceMonitorMultiplexer mDvcMon

mFastboot 활성화됨

protected boolean mFastbootEnabled

공개 생성자

기기 관리자

public DeviceManager ()

DeviceManager는 GlobalConfiguration 에서 검색되어야 합니다.

공개 메소드

addAvailableDevice

public void addAvailableDevice (IDevice stubDevice)

매개변수
stubDevice IDevice

addDeviceMonitor

public void addDeviceMonitor (IDeviceMonitor mon)

IDeviceMonitor 추가합니다.

매개변수
mon IDeviceMonitor

addFastbootDevice

public void addFastbootDevice (DeviceManager.FastbootDevice fastbootDevice)

매개변수
fastbootDevice DeviceManager.FastbootDevice

addFastbootListener

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 또는 tcp 연결을 구성할 수 없는 경우 null

connectFromTcpDevice

public boolean disconnectFromTcpDevice (ITestDevice tcpDevice)

adb-over-tcp 연결된 장치에서 연결을 끊습니다.

장치를 USB 모드로 다시 전환하고 해제합니다.

매개변수
tcpDevice ITestDevice : 현재 tcp 모드에 있는 장치이며 이전에 connectToTcpDevice(String) 통해 할당되었습니다.

보고
boolean USB 모드로의 전환이 성공하면 true

디스플레이장치정보

public void displayDevicesInfo (PrintWriter stream, 
                boolean includeStub)

알려진 장치 목록, 해당 상태, 일반적으로 사용되는 IDeviceSelection 옵션 값이 포함된 사용자 친화적인 설명을 출력합니다.

매개변수
stream PrintWriter : 설명을 출력할 ERROR(/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 .

실행GlobalAdb명령

public String executeGlobalAdbCommand (String... cmdArgs)

특정 장치를 대상으로 하지 않는 adb 명령을 실행합니다. 'adb 연결'

보고
String 명령이 성공하면 std 출력, 그렇지 않으면 null입니다.

강제할당장치

public ITestDevice forceAllocateDevice (String serial)

현재 사용할 수 없는 장치라도 함부로 장치를 할당합니다.

장치가 이미 할당된 경우 아무런 효과가 없습니다.

매개변수
serial String : 할당할 장치 시리얼

보고
ITestDevice ITestDevice , 할당할 수 없는 경우 null

무료 장치

public void freeDevice (ITestDevice device, 
                FreeDeviceState deviceState)

장치를 풀로 반환

이전에 할당되지 않은 장치를 반환하려는 시도는 무시됩니다.

매개변수
device ITestDevice : 해제할 ITestDevice

deviceState FreeDeviceState : FreeDeviceState . 장치가 사용 가능한 장치 풀로 반환되는지 여부를 제어하는 ​​데 사용됩니다.

getAdbPath

public String getAdbPath ()

사용할 adb 바이너리의 경로를 반환합니다.

보고
String

getAdb버전

public String getAdbVersion ()

현재 장치 관리자에서 사용 중인 adb 버전을 가져옵니다.

보고
String

getDeviceDescriptor

public DeviceDescriptor getDeviceDescriptor (String serial)

주어진 시리얼과 함께 DeviceDescriptor를 반환합니다.

매개변수
serial String : 가져올 장치의 일련번호

보고
DeviceDescriptor 선택된 장치에 대한 DeviceDescriptor . 일련번호가 알려진 장치와 일치하지 않는 경우 null입니다.

getFastboot경로

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

장치 관리자를 초기화합니다. 이 메소드는 다른 메소드가 호출되기 전에 한 번만 호출되어야 합니다.

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

킬 에뮬레이터

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 : 에뮬레이터가 부팅될 때까지 기다리는 시간(ms)

emulatorArgs : 에뮬레이터를 시작하기 위한 명령줄 인수

던지기
DeviceNotAvailableException

목록모든장치

public  listAllDevices (boolean shortDescriptor)

알려진 모든 장치에 대한 DeviceDescriptor 목록을 반환합니다.

매개변수
shortDescriptor boolean : 설명자를 최소 정보로 제한할지 여부

보고
알려진 모든 장치에 대한 DeviceDescriptor 목록

목록모든장치

public  listAllDevices ()

알려진 모든 장치에 대한 DeviceDescriptor 목록을 반환합니다.

보고
알려진 모든 장치에 대한 DeviceDescriptor 목록

reconnectDeviceToTcp

public ITestDevice reconnectDeviceToTcp (ITestDevice usbDevice)

지정된 USB 장치를 adb-over-tcp 모드로 전환한 다음 connectToTcpDevice(String) 통해 해당 장치에 연결하는 도우미 메서드입니다.

매개변수
usbDevice ITestDevice : 현재 USB 모드에 있는 장치

보고
ITestDevice tcp 모드에서 새로 할당된 ITestDevice 또는 tcp 연결을 구성할 수 없는 경우 null

던지기
DeviceNotAvailableException

제거장치모니터

public void removeDeviceMonitor (IDeviceMonitor mon)

이전에 추가된 IDeviceMonitor 제거합니다. mon이 추가되지 않은 경우 아무런 효과가 없습니다.

매개변수
mon IDeviceMonitor

제거FastbootListener

public void removeFastbootListener (IDeviceManager.IFastbootListener listener)

리스너가 더 이상 빠른 부팅 상태 변경에 관심이 없음을 관리자에게 알립니다.

재시작AdbBridge

public void restartAdbBridge ()

다시 시작하세요( stopAdbBridge() 호출된 경우) adb 브리지와 서비스는 adb 연결에 따라 달라집니다.

중지AdbBridge

public void stopAdbBridge ()

adb 브리지를 중지하고 서비스는 adb 연결에 따라 달라집니다.

끝내다

public void terminate ()

장치 모니터링 서비스를 중지하고 ddm 라이브러리를 종료합니다.

이는 애플리케이션 종료 시 호출되어야 합니다.

종료장치모니터

public void terminateDeviceMonitor ()

장치 모니터를 중지합니다.

종료장치복구

public void terminateDeviceRecovery ()

장치 복구 스레드를 중지합니다.

종료하드

public void terminateHard (String reason)

terminateHard() 와 같습니다.

매개변수
reason String : 종료 사유를 선택적으로 제공합니다.

종료하드

public void terminateHard ()

terminate() 와 비슷하지만 adb도 강제로 종료하려고 시도합니다.

waitForFirstDevice추가됨

public boolean waitForFirstDeviceAdded (long timeout)

첫 번째 물리적 장치가 연결될 때까지 기다립니다. 이전에 장치가 연결된 경우 True를 직접 반환합니다. 추가된 장치가 없으면 시간 초과 후 false를 반환합니다.

매개변수
timeout long : false를 반환하기 전에 기다리는 시간(밀리초)입니다.

보고
boolean