DeviceMonitor

public final class DeviceMonitor
extends Object implements ClientTracker

java.lang.Object
   ↳ com.android.tradefed.device.server.DeviceMonitor


DeviceMonitor는 adb에 연결된 기기를 모니터링합니다.

한 스레드에서는 DeviceListMonitorTask를 실행합니다. 이렇게 하면 adb 호스트에 소켓 연결이 설정되고 ERROR(/DeviceListMonitorTask.ADB_TRACK_DEVICES_COMMAND)가 실행됩니다. 그런 다음 기기 연결 및 기기 상태에 관한 모든 변경사항에 대해 소켓을 모니터링합니다. ::getClientSupport가 사용 설정되지 않으면 DeviceClientMonitorTask가 실행되지 않고 기기가 등록되지 않습니다.

다른 스레드에서는 DeviceClientMonitorTask를 실행합니다. 이렇게 하면 등록된 기기별로 adb 호스트에 소켓 연결이 설정되고 ERROR(/DeviceClientMonitorTask.ADB_TRACK_JDWP_COMMAND)가 실행됩니다. 이 연결에서 기기의 활성 클라이언트를 모니터링합니다. 참고: 단일 스레드가 모든 기기의 jdwp 연결을 모니터링합니다. adb에 대한 다양한 소켓 연결 (기기당 하나)은 단일 선택기를 통해 멀티플렉싱됩니다.

요약

중첩된 클래스

class DeviceMonitor.DeviceListComparisonResult

 

공개 생성자

DeviceMonitor(AndroidDebugBridge server)

DeviceMonitor 객체를 만들어 실행 중인 AndroidDebugBridge 객체에 연결합니다.

공개 메서드

int getConnectionAttemptCount()
IDevice[] getDevices()

기기를 반환합니다.

int getRestartAttemptCount()
boolean hasInitialDeviceList()
boolean isMonitoring()

모니터가 현재 디버그 브리지 서버에 연결되어 있는지 여부를 반환합니다.

void start()

모니터링을 시작합니다.

void stop()

모니터링을 중지합니다.

void trackClientToDropAndReopen(ClientImpl client)

클라이언트가 삭제되었지만 클라이언트와의 연결을 다시 열어야 함을 나타내는 콜백입니다.

void trackDeviceToDropAndReopen(DeviceImpl device)

기기가 삭제되었음을 나타내는 콜백입니다.

void trackDisconnectedClient(ClientImpl client)

클라이언트 연결이 끊어졌을 때의 콜백입니다.

공개 생성자

DeviceMonitor

public DeviceMonitor (AndroidDebugBridge server)

DeviceMonitor 객체를 만들어 실행 중인 AndroidDebugBridge 객체에 연결합니다.

매개변수
server AndroidDebugBridge: 실행 중인 AndroidDebugBridge입니다.

공개 메서드

getConnectionAttemptCount

public int getConnectionAttemptCount ()

반환 값
int

getDevices

public IDevice[] getDevices ()

기기를 반환합니다.

반환 값
IDevice[]

getRestartAttemptCount

public int getRestartAttemptCount ()

반환 값
int

hasInitialDeviceList

public boolean hasInitialDeviceList ()

반환 값
boolean

isMonitoring

public boolean isMonitoring ()

모니터가 현재 디버그 브리지 서버에 연결되어 있는지 여부를 반환합니다.

반환 값
boolean

start

public void start ()

모니터링을 시작합니다.

경유

public void stop ()

모니터링을 중지합니다.

trackClientToDropAndReopen

public void trackClientToDropAndReopen (ClientImpl client)

클라이언트가 삭제되었지만 클라이언트와의 연결을 다시 열어야 함을 나타내는 콜백입니다.

매개변수
client ClientImpl: 삭제되었습니다.

trackDeviceToDropAndReopen

public void trackDeviceToDropAndReopen (DeviceImpl device)

기기가 삭제되었음을 나타내는 콜백입니다. 기기와의 연결을 다시 열고 해당 기기에서 실행되는 클라이언트와의 연결을 다시 설정해야 합니다.

매개변수
device DeviceImpl: 삭제되었습니다.

trackDisconnectedClient

public void trackDisconnectedClient (ClientImpl client)

클라이언트 연결이 끊어졌을 때의 콜백입니다. 이 콜백은 클라이언트 소켓에 대한 등록을 보유한 스레드에 이를 해제하도록 알리기 위한 것입니다.

매개변수
client ClientImpl: 삭제됨