遠程安卓設備

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 。假設設備序列號的格式:在亞行。

概括

常量

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)

檢查序列號的格式是否符合預期:港口

DeviceDescriptor getDeviceDescriptor ()

從設備信息中返回一個DeviceDescriptor以獲取有關它的信息,而不傳遞實際的設備對象。

String getHostName ()

返回與設備關聯的主機名。

Integer getInitialDeviceNumOffset ()

返回已知的設備編號偏移量(如果有)。

String getInitialIp ()

將初始關聯的 ip 返回到設備(如果有)。

String getInitialSerial ()

返回設備的初始序列名。

String getInitialUser ()

返回初始已知用戶(如果有)。

String getMacAddress ()

返回設備的MAC地址,如果向設備查詢失敗則返回null。

String getPortNum ()

返回與設備關聯的端口號。

boolean isEncryptionSupported ()

如果設備支持加密,則返回。

void postAdbRootAction ()

如果設備需要在 adb root 之後和設備重新聯機之前執行某些特定操作,則覆蓋。

void postAdbUnrootAction ()

如果設備需要在 adb unroot 之後和設備重新聯機之前執行某些特定操作,則覆蓋。

void postInvocationTearDown (Throwable exception)

特定於設備的額外步驟需要清理,將在調用完成後執行。

boolean recoverDevice ()

嘗試恢復設備通信。

void setAdbLogFile (File adbLogFile)

提供一個接收器文件,我們可以在其中存儲所有 adb 連接日誌以用於調試目的。

void waitForAdbConnect (long waitTime)

檢查是否啟用了 adb 連接。

受保護的方法

void postAdbReboot ()

重啟後可能執行的額外操作。

常量

默認_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)

公共構造函數

遠程安卓設備

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。

檢查SerialFormatValid

public static boolean checkSerialFormatValid (String serialString)

檢查序列號的格式是否符合預期:港口

參數
serialString String

退貨
boolean如果格式有效則為真,否則為假。

獲取設備描述符

public DeviceDescriptor getDeviceDescriptor ()

從設備信息中返回一個DeviceDescriptor以獲取有關它的信息,而不傳遞實際的設備對象。

退貨
DeviceDescriptor

獲取主機名

public String getHostName ()

返回與設備關聯的主機名。從連續劇中提取。

退貨
String

getInitialDeviceNumOffset

public Integer getInitialDeviceNumOffset ()

返回已知的設備編號偏移量(如果有)。如果不可用,則返回 null。

退貨
Integer

獲取初始IP

public String getInitialIp ()

將初始關聯的 ip 返回到設備(如果有)。如果沒有已知的初始 ip,則返回 null。

退貨
String

獲取初始序列號

public String getInitialSerial ()

返回設備的初始序列名。

退貨
String

獲取初始用戶

public String getInitialUser ()

返回初始已知用戶(如果有)。如果沒有初始已知用戶,則返回 null。

退貨
String

獲取Mac地址

public String getMacAddress ()

返回設備的MAC地址,如果向設備查詢失敗則返回null。

退貨
String

獲取端口號

public String getPortNum ()

返回與設備關聯的端口號。從連續劇中提取。

退貨
String

isEncryptionSupported

public boolean isEncryptionSupported ()

如果設備支持加密,則返回。

退貨
boolean如果設備支持加密, true

postAdbRootAction

public void postAdbRootAction ()

如果設備需要在 adb root 之後和設備重新聯機之前執行某些特定操作,則覆蓋。默認實現不包括任何添加操作。不保證在此階段啟用 adb root。

投擲
DeviceNotAvailableException

postAdbUnrootAction

public void postAdbUnrootAction ()

如果設備需要在 adb unroot 之後和設備重新聯機之前執行某些特定操作,則覆蓋。默認實現不包括任何其他操作。不保證在此階段禁用 adb root。

投擲
DeviceNotAvailableException

postInvocationTearDown

public void postInvocationTearDown (Throwable exception)

特定於設備的額外步驟需要清理,將在調用完成後執行。

參數
exception Throwable :如果有的話,調用失敗引發的最終異常。

恢復設備

public boolean recoverDevice ()

嘗試恢復設備通信。

退貨
boolean如果嘗試恢復並成功則返回 True,如果跳過恢復則返回 False

投擲
DeviceNotAvailableException

設置 AdbLogFile

public void setAdbLogFile (File adbLogFile)

提供一個接收器文件,我們可以在其中存儲所有 adb 連接日誌以用於調試目的。

參數
adbLogFile File

等待 AdbConnect

public void waitForAdbConnect (long waitTime)

檢查是否啟用了 adb 連接。

參數
waitTime long

投擲
DeviceNotAvailableException

受保護的方法

postAdbReboot

protected void postAdbReboot ()

重啟後可能執行的額外操作。

投擲
DeviceNotAvailableException