远程Android虚拟设备

public class RemoteAndroidVirtualDevice
extends RemoteAndroidDevice implements ITestLoggerReceiver

java.lang.Object
com.android.tradefed.device.NativeDevice
com.android.tradefed.device.TestDevice
com.android.tradefed.device.RemoteAndroidDevice
com.android.tradefed.device.cloud.RemoteAndroidVirtualDevice


扩展了在 Google 计算引擎 (Gce) 中运行的全栈 Android 设备的RemoteAndroidDevice行为。假设设备序列号的格式为在亚行。

概括

公共构造函数

RemoteAndroidVirtualDevice (IDevice device, IDeviceStateMonitor stateMonitor, IDeviceMonitor allocationMonitor)

创建一个RemoteAndroidVirtualDevice

公共方法

GceAvdInfo getAvdInfo ()

从创建的远程VM返回GceAvdInfo

DeviceDescriptor getDeviceDescriptor ()

getTombstones ()

Cuttlefish 有一个特殊功能,可以将墓碑带到远程主机,我们可以直接获取它们。

void postBootSetup ()

{@继承}

void postInvocationTearDown (Throwable exception)

boolean powerwashGce ()

尝试对 GCE 实例进行 Powerwash

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

公共方法

获取AVD信息

public GceAvdInfo getAvdInfo ()

从创建的远程VM返回GceAvdInfo 。如果启动不成功则返回 null。

退货
GceAvdInfo

获取设备描述符

public DeviceDescriptor getDeviceDescriptor ()

退货
DeviceDescriptor

获取墓碑

public  getTombstones ()

Cuttlefish 有一个特殊功能,可以将墓碑带到远程主机,我们可以直接获取它们。

退货

投掷
DeviceNotAvailableException

启动后设置

public void postBootSetup ()

{@继承}

投掷
DeviceNotAvailableException

调用后拆卸

public void postInvocationTearDown (Throwable exception)

参数
exception Throwable

强力清洗Gce

public boolean powerwashGce ()

尝试对 GCE 实例进行 Powerwash

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

受保护的方法

执行AdbReboot

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