TestDevice.MicrodroidBuilder

public static class TestDevice.MicrodroidBuilder
extends Object

java.lang.Object
   ↳ com.android.tradefed.device.TestDevice.MicrodroidBuilder


用于创建 Microdroid TestDevice 的构建器。

摘要

公共方法

TestDevice.MicrodroidBuilder addAssignableDevice(String sysfsNode)

添加要分配给 microdroid 的设备。

TestDevice.MicrodroidBuilder addBootFile(File localFile, String remoteFileName)

添加要推送到 ERROR(/#TEST_ROOT) 的用于启动的文件。

TestDevice.MicrodroidBuilder addExtraIdsigPath(String extraIdsigPath)

向列表添加额外的 idsig 文件。

TestDevice.MicrodroidBuilder addTestDeviceOption(String optionName, String valueText)

为 microdroid TestDevice 设置 TestDeviceOptions

ITestDevice build(TestDevice device)

在给定的 TestDevice 上启动 Micrdroid TestDevice。

TestDevice.MicrodroidBuilder cpuAffinity(String affinity)

设置 vCPU 可在哪些主机 CPU 上运行。

TestDevice.MicrodroidBuilder cpuTopology(String cpuTopology)

设置 CPU 拓扑配置。

TestDevice.MicrodroidBuilder debugLevel(String debugLevel)

设置调试级别。

TestDevice.MicrodroidBuilder dumpDt(String dumpDt)

设置将要转储的设备树 blob 的路径。

TestDevice.MicrodroidBuilder enableEarlycon(boolean enableEarlycon)

为此虚拟机启用 earlycon 日志。

TestDevice.MicrodroidBuilder forceStartAdbd(boolean forceStartAdbd)

在 `vm run` 和 `adb forward` 之间强制调用 `vm start-adbd`

注意:在旧版 API 级别(SDK 36 之前)中,此函数不执行任何操作。

static TestDevice.MicrodroidBuilder fromDevicePath(String apkPath, String configPath)

为给定 apkPath 和 APK 中的载荷配置文件创建 Microdroid 构建器。

static TestDevice.MicrodroidBuilder fromDevicePathWithPayloadBinaryName(String apkPath, String payloadBinaryName)

为给定的 apkPath 和 APK 中的载荷二进制名称创建 Microdroid 构建器。

static TestDevice.MicrodroidBuilder fromFile(File apkFile, String configPath)

为给定 APK 和 APK 中的载荷配置文件创建 Microdroid 构建器。

TestDevice.MicrodroidBuilder gki(String version)

此方法已废弃。 使用 os(String)

TestDevice.MicrodroidBuilder hugePages(boolean hintHugePages)

设置是否向内核提示透明巨型页面。

TestDevice.MicrodroidBuilder instanceIdFile(String instanceIdPath)

设置 instance_id 路径。

TestDevice.MicrodroidBuilder instanceImgFile(String instanceImgPath)

设置 instance.img 文件路径。

TestDevice.MicrodroidBuilder memoryMib(int memoryMib)

设置要为虚拟机提供的 RAM 容量。

TestDevice.MicrodroidBuilder name(String name)

为此虚拟机设置名称。

TestDevice.MicrodroidBuilder numCpus(int num)

设置虚拟机中的 vCPU 数量。

TestDevice.MicrodroidBuilder os(String os)

使用非默认的 Microdroid 操作系统变体。

TestDevice.MicrodroidBuilder protectedVm(boolean isProtectedVm)

设置是否保护虚拟机。

TestDevice.MicrodroidBuilder ramdump(boolean useRamdump)

设置是否关闭用于 ramdump 的崩溃内核。

TestDevice.MicrodroidBuilder setAdbConnectTimeoutMs(long timeoutMs)

设置 adb 连接到 microdroid TestDevice 的超时时间(以毫秒为单位)。

公共方法

addAssignableDevice

public TestDevice.MicrodroidBuilder addAssignableDevice (String sysfsNode)

添加要分配给 microdroid 的设备。

参数
sysfsNode String:要分配的 sysfs 节点的路径

返回
TestDevice.MicrodroidBuilder Microdroid 构建器。

addBootFile

public TestDevice.MicrodroidBuilder addBootFile (File localFile, 
                String remoteFileName)

添加了要推送到 ERROR(/#TEST_ROOT) 的用于启动的文件。

如果启动 microdroid 需要文件,请使用此方法。否则,请使用 TestDevice.pushFile

参数
localFile File:主机上的本地文件

remoteFileName String:设备上的远程文件名

返回
TestDevice.MicrodroidBuilder Microdroid 构建器。

addExtraIdsigPath

public TestDevice.MicrodroidBuilder addExtraIdsigPath (String extraIdsigPath)

向列表添加额外的 idsig 文件。

参数
extraIdsigPath String

返回
TestDevice.MicrodroidBuilder

addTestDeviceOption

public TestDevice.MicrodroidBuilder addTestDeviceOption (String optionName, 
                String valueText)

为 microdroid TestDevice 设置 TestDeviceOptions

参数
optionName String:要设置的 TestDeviceOption 的名称

valueText String:值

返回
TestDevice.MicrodroidBuilder Microdroid 构建器。

build

public ITestDevice build (TestDevice device)

在给定的 TestDevice 上启动 Micrdroid TestDevice。

参数
device TestDevice

返回
ITestDevice

抛出
DeviceNotAvailableException

cpuAffinity

public TestDevice.MicrodroidBuilder cpuAffinity (String affinity)

设置 vCPU 可在哪些主机 CPU 上运行。格式是以逗号分隔的 CPU 或 CPU 范围列表,用于指定运行 vCPU 的 CPU。例如,“0,1-3,5”表示选择主机 CPU 0、1、2、3 和 5。或者,也可以是以英文冒号分隔的 vCPU 到宿主机 CPU 的分配列表。例如,“0=0:1=1:2=2”表示将 vCPU 0 映射到宿主机 CPU 0,依此类推。

仅在 Android T 中受支持。

参数
affinity String

返回
TestDevice.MicrodroidBuilder

cpuTopology

public TestDevice.MicrodroidBuilder cpuTopology (String cpuTopology)

设置 CPU 拓扑配置。支持的值:“one_cpu”和“match_host”。

参数
cpuTopology String

返回
TestDevice.MicrodroidBuilder

debugLevel

public TestDevice.MicrodroidBuilder debugLevel (String debugLevel)

设置调试级别。

支持的值:“none”和“full”。Android T 还支持“app_only”。

参数
debugLevel String

返回
TestDevice.MicrodroidBuilder

dumpDt

public TestDevice.MicrodroidBuilder dumpDt (String dumpDt)

设置将要转储的设备树 blob 的路径。

支持的值:null 和“path”。

参数
dumpDt String

返回
TestDevice.MicrodroidBuilder

enableEarlycon

public TestDevice.MicrodroidBuilder enableEarlycon (boolean enableEarlycon)

为相应虚拟机启用 earlycon 日志。

注意:在旧版 API 级别(SDK 36 之前)中,此函数不执行任何操作。

参数
enableEarlycon boolean

返回
TestDevice.MicrodroidBuilder Microdroid 构建器。

forceStartAdbd

public TestDevice.MicrodroidBuilder forceStartAdbd (boolean forceStartAdbd)

在 `vm run` 和 `adb forward` 之间强制调用 `vm start-adbd`

注意:在旧版 API 级别(SDK 36 之前)中,此函数不执行任何操作。

参数
forceStartAdbd boolean

返回
TestDevice.MicrodroidBuilder Microdroid 构建器。

fromDevicePath

public static TestDevice.MicrodroidBuilder fromDevicePath (String apkPath, 
                String configPath)

为给定的 apkPath 和 APK 中的载荷配置文件创建 Microdroid 构建器。

参数
apkPath String

configPath String

返回
TestDevice.MicrodroidBuilder

fromDevicePathWithPayloadBinaryName

public static TestDevice.MicrodroidBuilder fromDevicePathWithPayloadBinaryName (String apkPath, 
                String payloadBinaryName)

为给定的 apkPath 和 APK 中的载荷二进制名称创建 Microdroid 构建器。

参数
apkPath String

payloadBinaryName String

返回
TestDevice.MicrodroidBuilder

fromFile

public static TestDevice.MicrodroidBuilder fromFile (File apkFile, 
                String configPath)

为给定 APK 和 APK 中的载荷配置文件创建 Microdroid 构建器。

参数
apkFile File

configPath String

返回
TestDevice.MicrodroidBuilder

gki

public TestDevice.MicrodroidBuilder gki (String version)

此方法已废弃。
使用 os(String)

使用 GKI 内核,而不是 microdroid 内核

参数
version String:要使用的 GKI 版本

返回
TestDevice.MicrodroidBuilder

hugePages

public TestDevice.MicrodroidBuilder hugePages (boolean hintHugePages)

设置是否向内核提示透明大内存页。

参数
hintHugePages boolean

返回
TestDevice.MicrodroidBuilder Microdroid 构建器。

instanceIdFile

public TestDevice.MicrodroidBuilder instanceIdFile (String instanceIdPath)

设置 instance_id 路径。

参数
instanceIdPath String::instanceId 的路径

返回
TestDevice.MicrodroidBuilder

instanceImgFile

public TestDevice.MicrodroidBuilder instanceImgFile (String instanceImgPath)

设置 instance.img 文件路径。

参数
instanceImgPath String

返回
TestDevice.MicrodroidBuilder

memoryMib

public TestDevice.MicrodroidBuilder memoryMib (int memoryMib)

设置要为虚拟机提供的 RAM 容量。如果此值为零或负值,则系统会使用默认值。

参数
memoryMib int

返回
TestDevice.MicrodroidBuilder

名称

public TestDevice.MicrodroidBuilder name (String name)

为此虚拟机设置名称。

参数
name String

返回
TestDevice.MicrodroidBuilder Microdroid 构建器。

numCpus

public TestDevice.MicrodroidBuilder numCpus (int num)

设置虚拟机中的 vCPU 数量。默认值为 1。

仅在 Android T 中受支持。

参数
num int

返回
TestDevice.MicrodroidBuilder

os

public TestDevice.MicrodroidBuilder os (String os)

使用 Microdroid OS 的非默认变体。

参数
os String:要使用的 Microdroid 操作系统版本

返回
TestDevice.MicrodroidBuilder

protectedVm

public TestDevice.MicrodroidBuilder protectedVm (boolean isProtectedVm)

设置是否保护虚拟机。

参数
isProtectedVm boolean

返回
TestDevice.MicrodroidBuilder

ramdump

public TestDevice.MicrodroidBuilder ramdump (boolean useRamdump)

设置是否关闭用于 ramdump 的崩溃内核。

参数
useRamdump boolean

返回
TestDevice.MicrodroidBuilder Microdroid 构建器。

setAdbConnectTimeoutMs

public TestDevice.MicrodroidBuilder setAdbConnectTimeoutMs (long timeoutMs)

设置 adb 连接到 microdroid TestDevice 的超时时间(以毫秒为单位)。

此值应为正值,以防止测试挂起。

参数
timeoutMs long:超时时间(以毫秒为单位)

返回
TestDevice.MicrodroidBuilder