遠程Android設備

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)

從給定 tcp ip Android 設備斷開連接的輔助方法

static boolean checkSerialFormatValid (String serialString)

檢查串口的格式是否符合預期:港口

DeviceDescriptor getDeviceDescriptor ()

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

String getHostName ()

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

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 連接。

受保護的方法

Integer getInitialDeviceNumOffset ()

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

String getInitialIp ()

如果有,則將初始關聯 ip 返回給設備。

String getInitialSerial ()

返回設備的初始序列名稱。

String getInitialUser ()

如果有的話,返回初始的已知用戶。

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)

公共構造函數

遠程Android設備

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)

從給定 tcp ip Android 設備斷開連接的輔助方法

參數
host String : tcp/ip Android 設備的主機名/ip

port String : tcp/ip 設備的端口號

退貨
boolean如果我們成功斷開與設備的連接,則為 true,否則為 false。

checkSerialFormatValid

public static boolean checkSerialFormatValid (String serialString)

檢查串口的格式是否符合預期:港口

參數
serialString String

退貨
boolean如果格式有效,則為 true,否則為 false。

獲取設備描述符

public DeviceDescriptor getDeviceDescriptor ()

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

退貨
DeviceDescriptor

獲取主機名

public String getHostName ()

返回與設備關聯的主機名。摘自連載。

退貨
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

setAdbLogFile

public void setAdbLogFile (File adbLogFile)

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

參數
adbLogFile File

等待AdbConnect

public void waitForAdbConnect (long waitTime)

檢查是否啟用了 adb 連接。

參數
waitTime long

投擲
DeviceNotAvailableException

受保護的方法

getInitialDeviceNumOffset

protected Integer getInitialDeviceNumOffset ()

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

退貨
Integer

獲取初始IP

protected String getInitialIp ()

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

退貨
String

getInitialSerial

protected String getInitialSerial ()

返回設備的初始序列名稱。

退貨
String

獲取初始用戶

protected String getInitialUser ()

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

退貨
String

postAdbReboot

protected void postAdbReboot ()

重新啟動後可能採取的額外操作。

投擲
DeviceNotAvailableException