RemoteAndroidDevice

public class RemoteAndroidDevice
extends TestDevice

java.lang.Object
   ↳ com.android.tradefed.device.NativeDevice
     ↳ com.android.tradefed.device.TestDevice
       ↳ com.android.tradefed.device.RemoteAndroidDevice


为通过 adb connect 连接的完整堆栈 Android 设备实现 ITestDevice。 假设设备序列号的格式为 adb 中的 :

摘要

常量

long DEFAULT_SHORT_CMD_TIMEOUT

int MAX_RETRIES

long RETRY_INTERVAL_MS

long WAIT_FOR_ADB_CONNECT

公共构造函数

RemoteAndroidDevice(IDevice device, IDeviceStateMonitor stateMonitor, IDeviceMonitor allocationMonitor)

创建 RemoteAndroidDevice

公共方法

boolean adbTcpConnect(String host, String port)

用于 adb 连接到给定 tcp ip Android 设备的辅助方法

boolean adbTcpDisconnect(String host, String port)

用于 adb 断开与给定 tcp ip Android 设备连接的辅助方法

static boolean checkSerialFormatValid(String serialString)

检查序列的格式是否符合预期 :port

DeviceDescriptor getDeviceDescriptor()

String getHostName()

返回与设备关联的主机名。

String getMacAddress()

String getPortNum()

返回与设备关联的端口号。

boolean isEncryptionSupported()

void postAdbRootAction()

如果设备需要在 adb root 后和设备恢复在线之前执行一些特定操作,请替换此方法。

void postAdbUnrootAction()

如果设备在 adb 取消 root 权限后需要执行一些特定操作,则在设备恢复在线之前替换此方法。

void postInvocationTearDown(Throwable exception)

void recoverDevice()

尝试恢复设备通信。

void setAdbLogFile(File adbLogFile)

提供一个接收器文件,以便我们存储所有 adb 连接日志以进行调试。

void waitForAdbConnect(long waitTime)

检查 adb 连接是否已启用。

受保护的方法

String getInitialIp()

返回与设备关联的初始 IP(如果有)。

String getInitialSerial()

返回设备的初始序列名称。

void postAdbReboot()

重新启动后可以执行的可能额外操作。

常量

DEFAULT_SHORT_CMD_TIMEOUT

protected static final long DEFAULT_SHORT_CMD_TIMEOUT

常量值: 20000 (0x0000000000004e20)

MAX_RETRIES

protected static final int MAX_RETRIES

常量值: 5 (0x00000005)

RETRY_INTERVAL_MS

protected static final long RETRY_INTERVAL_MS

常量值: 5000 (0x0000000000001388)

WAIT_FOR_ADB_CONNECT

public static final long WAIT_FOR_ADB_CONNECT

常量值: 120000 (0x000000000001d4c0)

公共构造函数

RemoteAndroidDevice

public RemoteAndroidDevice (IDevice device, 
                IDeviceStateMonitor stateMonitor, 
                IDeviceMonitor allocationMonitor)

创建 RemoteAndroidDevice

参数
device IDevice:关联的 IDevice

stateMonitor IDeviceStateMonitor:要使用的 IDeviceStateMonitor 机制

allocationMonitor IDeviceMonitor:用于通知分配状态变化的 IDeviceMonitor

公共方法

adbTcpConnect

public boolean adbTcpConnect (String host, 
                String port)

用于通过 adb 连接到给定 TCP IP Android 设备的辅助方法

参数
host String:tcp/ip Android 设备的主机名/IP

port String:TCP/IP 设备的端口号

返回
boolean 如果成功连接到设备,则为 true;否则为 false。

adbTcpDisconnect

public boolean adbTcpDisconnect (String host, 
                String port)

用于 adb 与给定 tcp ip Android 设备断开连接的辅助方法

参数
host String:tcp/ip Android 设备的主机名/IP

port String:TCP/IP 设备的端口号

返回
boolean 如果成功断开与设备的连接,则为 true;否则为 false。

checkSerialFormatValid

public static boolean checkSerialFormatValid (String serialString)

检查串行端口的格式是否符合预期 :port

参数
serialString String

返回
boolean 如果格式有效,则为 true;否则,为 false。

getDeviceDescriptor

public DeviceDescriptor getDeviceDescriptor ()

返回
DeviceDescriptor

getHostName

public String getHostName ()

返回与设备关联的主机名。从连续剧中提取。

返回
String

getMacAddress

public String getMacAddress ()

返回
String

getPortNum

public String getPortNum ()

返回与设备关联的端口号。从连续剧中提取。

返回
String

isEncryptionSupported

public boolean isEncryptionSupported ()

返回
boolean

postAdbRootAction

public void postAdbRootAction ()

如果设备需要在 adb root 之后和设备恢复在线之前执行一些特定操作,请替换此方法。 默认实现不包含任何其他操作。此阶段无法保证 adb root 已启用。

抛出
DeviceNotAvailableException

postAdbUnrootAction

public void postAdbUnrootAction ()

如果设备在 adb 取消 root 权限后,需要在重新上线之前执行一些特定操作,请替换此值。 默认实现不包含任何其他操作。此阶段不保证 adb root 已停用。

抛出
DeviceNotAvailableException

postInvocationTearDown

public void postInvocationTearDown (Throwable exception)

参数
exception Throwable

recoverDevice

public void recoverDevice ()

尝试恢复设备通信。

抛出
DeviceNotAvailableException

setAdbLogFile

public void setAdbLogFile (File adbLogFile)

提供一个接收器文件,以便我们存储所有 adb 连接日志以进行调试。

参数
adbLogFile File

waitForAdbConnect

public void waitForAdbConnect (long waitTime)

检查 adb 连接是否已启用。

参数
waitTime long

抛出
DeviceNotAvailableException

受保护的方法

getInitialIp

protected String getInitialIp ()

返回与设备关联的初始 IP(如果有)。如果没有已知的初始 IP,则返回 null。

返回
String

getInitialSerial

protected String getInitialSerial ()

返回设备的初始序列名称。

返回
String

postAdbReboot

protected void postAdbReboot ()

重新启动后可以执行的可能额外操作。

抛出
DeviceNotAvailableException