遠程Android虛擬設備

public class RemoteAndroidVirtualDevice
extends RemoteAndroidDevice implements ITestLoggerReceiver

對象
com.android.tradefed.device.NativeDevice
com.android.tradefed.device.TestDevice
com.android.tradefed.device.RemoteAndroidDevice
com.android.tradefed.device.cloud.RemoteAndroidVirtualDevice


擴展RemoteAndroidDevice行為在谷歌計算引擎(GCE)上運行一個完整的堆棧的Android設備。假設設備序列號的格式為在亞行。

概括

公共構造函數

RemoteAndroidVirtualDevice (IDevice device, IDeviceStateMonitor stateMonitor, IDeviceMonitor allocationMonitor)

創建RemoteAndroidVirtualDevice

公共方法

GceAvdInfo getAvdInfo ()

返回GceAvdInfo從創建的遠程虛擬機。

DeviceDescriptor getDeviceDescriptor ()

getTombstones ()

Cuttlefish 有一個特殊功能,可以將墓碑帶到遠程主機,在那裡我們可以直接獲取它們。

void postBootSetup ()

{@繼承}

void postInvocationTearDown (Throwable exception)

boolean powerwashGce ()

嘗試強力清洗 GCE 實例

void preInvocationSetup (IBuildInfo info, MultiMap<String, String> attributes)

void recoverDevice ()

嘗試恢復設備通信。

void setGceSshMonitor ( GceSshTunnelMonitor gceSshMonitor)

覆蓋內部GceSshTunnelMonitor該裝置。

void setTestLogger (ITestLogger testLogger)

受保護的方法

void doAdbReboot ( NativeDevice.RebootMode rebootMode, String reason)

執行 adb 重啟。

long getCurrentTime ()

返回當前系統時間。

GceSshTunnelMonitor getGceSshMonitor ()

返回GceSshTunnelMonitor的設備。

void launchGce (IBuildInfo buildInfo, MultiMap<String, String> attributes)

根據構建信息啟動實際的 gce 設備。

void waitForTunnelOnline (long waitTime)

檢查隧道監視器是否正在運行。

公共構造函數

遠程Android虛擬設備

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

創建RemoteAndroidVirtualDevice

參數
device IDevice :相關IDevice

stateMonitor IDeviceStateMonitor :在IDeviceStateMonitor機制使用

allocationMonitor IDeviceMonitor :在IDeviceMonitor通知的分配狀態的變化。

公共方法

獲取信息

public GceAvdInfo getAvdInfo ()

返回GceAvdInfo從創建的遠程虛擬機。如果啟動不成功,則返回 null。

退貨
GceAvdInfo

獲取設備描述符

public DeviceDescriptor getDeviceDescriptor ()

退貨
DeviceDescriptor

獲取墓碑

public  getTombstones ()

Cuttlefish 有一個特殊功能,可以將墓碑帶到遠程主機,在那裡我們可以直接獲取它們。

退貨

投擲
DeviceNotAvailableException

啟動後設置

public void postBootSetup ()

{@繼承}

投擲
DeviceNotAvailableException

調用後拆解

public void postInvocationTearDown (Throwable exception)

參數
exception Throwable

Powerwash Gce

public boolean powerwashGce ()

嘗試強力清洗 GCE 實例

退貨
boolean如果 powerwash Gce 成功,則返回 true。

投擲
com.android.tradefed.targetprep.TargetSetupError
DeviceNotAvailableException
TargetSetupError

調用前設置

public void preInvocationSetup (IBuildInfo info, 
                MultiMap<String, String> attributes)

參數
info IBuildInfo

attributes MultiMap

投擲
DeviceNotAvailableException
TargetSetupError

恢復設備

public void recoverDevice ()

嘗試恢復設備通信。

投擲
DeviceNotAvailableException

設置GceSshMonitor

public void setGceSshMonitor (GceSshTunnelMonitor gceSshMonitor)

覆蓋內部GceSshTunnelMonitor該裝置。

參數
gceSshMonitor GceSshTunnelMonitor

設置測試記錄器

public void setTestLogger (ITestLogger testLogger)

參數
testLogger ITestLogger

受保護的方法

doAdb重啟

protected void doAdbReboot (NativeDevice.RebootMode rebootMode, 
                String reason)

執行 adb 重啟。

參數
rebootMode NativeDevice.RebootMode :這個重啟的模式。

reason String :此重新啟動。

投擲
DeviceNotAvailableException

獲取當前時間

protected long getCurrentTime ()

返回當前系統時間。暴露用於測試。

退貨
long

獲取GceSshMonitor

protected GceSshTunnelMonitor getGceSshMonitor ()

返回GceSshTunnelMonitor的設備。暴露用於測試。

退貨
GceSshTunnelMonitor

啟動Gce

protected void launchGce (IBuildInfo buildInfo, 
                MultiMap<String, String> attributes)

根據構建信息啟動實際的 gce 設備。

參數
buildInfo IBuildInfo

attributes MultiMap

投擲
TargetSetupError

等待隧道在線

protected void waitForTunnelOnline (long waitTime)

檢查隧道監視器是否正在運行。

參數
waitTime long

投擲
DeviceNotAvailableException