远程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) |
公共方法 | |
---|---|
GceAvdInfo | getAvdInfo () 从创建的远程VM返回 |
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) 覆盖设备的内部 |
void | setTestLogger (ITestLogger testLogger) |
受保护的方法 | |
---|---|
void | doAdbReboot ( NativeDevice.RebootMode rebootMode, String reason) 执行 adb 重启。 |
long | getCurrentTime () 返回当前系统时间。 |
GceSshTunnelMonitor | getGceSshMonitor () 返回设备的 |
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 DeviceDescriptor getDeviceDescriptor ()
退货 | |
---|---|
DeviceDescriptor |
获取墓碑
publicgetTombstones ()
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 |