TestAppInstallSetup
public
class
TestAppInstallSetup
extends BaseTargetPreparer
implements
IAbiReceiver,
IDiscoverDependencies
java.lang.Object 中 | ||
↳ | com.android.tradefed.targetprep.BaseTargetPreparer | |
↳ | com.android.tradefed.targetprep.TestAppInstallSetup |
将 IDeviceBuildInfo.getTestsDir()
文件夹中的一个或多个应用安装到设备上的 ITargetPreparer
。
如果测试 zip 不存在或不存在,此准备器将查找备用目录 包含所需的 APK。系统将从指定的最后一个备用目录到 目录中,按照 的顺序进行搜索。 第一个。
摘要
字段 | |
---|---|
protected
IncrementalInstallSession |
incrementalInstallSession
|
protected
double |
mBlockFilterPercentage
|
protected
int |
mIncrementalInstallTimeout
|
protected
boolean |
mIncrementalInstallation
|
公共构造函数 | |
---|---|
TestAppInstallSetup()
|
公共方法 | |
---|---|
void
|
addInstallArg(String arg)
添加一个要使用的 APK 安装参数。 |
void
|
addSplitApkFileNames(String fileNames)
添加一组文件名除以“,”字符串中,将作为拆分 APK 进行安装 |
void
|
addTestFile(File file)
将文件或目录添加到要安装的 APK 列表中。 |
void
|
addTestFileName(String fileName)
将文件名添加到要安装的 APK 列表中。 |
IAbi
|
getAbi()
|
ITestDevice
|
getDevice()
返回准备器应该应用到的设备。 |
TestInformation
|
getTestInfo()
|
|
getTestsFileName()
返回指定的测试 APK 名称列表的副本。 |
boolean
|
isCleanUpEnabled()
如果在拆解期间清除 APK,则返回 True。 |
final
boolean
|
isInstantMode()
返回是否已启用免安装模式安装的指示值。 |
|
reportDependencies()
|
void
|
setAaptVersion(AaptParser.AaptVersion aaptVersion)
设置用于 APK 解析的 AAPT 版本。 |
void
|
setAbi(IAbi abi)
|
void
|
setAltDir(File altDir)
设置备用目录。 |
void
|
setAltDirBehavior(AltDirBehavior altDirBehavior)
设置备用目录行为。 |
void
|
setCleanApk(boolean shouldClean)
设置是否应在拆解 (tearDown) 时清理已安装的 APK |
void
|
setForceQueryable(boolean forceQueryable)
强制查询的默认值为 true。 |
final
void
|
setInstantMode(boolean mode)
设置在安装 apk 时是否应使用 --instant。 |
void
|
setShouldGrantPermission(boolean shouldGrant)
如果提供了 userId,则可以为 APK 安装设置 grantPermission。 |
void
|
setUp(ITestDevice device, IBuildInfo buildInfo)
<ph type="x-smartling-placeholder"></ph> 此方法已被弃用。 临时向后兼容的回调。 |
void
|
setUp(TestInformation testInfo)
|
void
|
setUserId(int userId)
如果应为特定用户安装该 apk,则设置要为该用户安装 apk 的用户的 ID。 |
void
|
tearDown(TestInformation testInfo, Throwable e)
|
受保护的方法 | |
---|---|
IncrementalInstallSession.Builder
|
getIncrementalInstallSessionBuilder()
初始化会话构建器以逐步安装测试应用。 |
File
|
getLocalPathForFilename(TestInformation testInfo, String apkFileName)
根据 build 信息中的测试工件信息解析实际的 APK 路径。 |
void
|
installPackageIncrementally(IncrementalInstallSession.Builder builder)
启动测试应用的增量安装会话。 |
void
|
installer(TestInformation testInfo,
尝试在设备上安装软件包或拆分软件包。 |
String
|
parsePackageName(File testAppFile)
从测试应用获取软件包名称。 |
|
resolveApkFiles(TestInformation testInfo,
帮助将某个 APK 解析到其文件和软件包中。 |
void
|
setTestInformation(TestInformation testInfo)
|
void
|
uninstallPackage(ITestDevice device, String packageName)
尝试从设备中移除软件包。 |
字段
增量安装会话
protected IncrementalInstallSession incrementalInstallSession
mBlockFilterPercentage
protected double mBlockFilterPercentage
m 增量安装超时
protected int mIncrementalInstallTimeout
m 增量安装
protected boolean mIncrementalInstallation
公共构造函数
TestAppInstallSetup
public TestAppInstallSetup ()
公共方法
addInstallArg
public void addInstallArg (String arg)
添加一个要使用的 APK 安装参数。
参数 | |
---|---|
arg |
String |
addSplitApkFileNames
public void addSplitApkFileNames (String fileNames)
添加一组文件名除以“,”字符串中,将作为拆分 APK 进行安装
参数 | |
---|---|
fileNames |
String :文件名字符串(用“,”隔开) |
addTestFile
public void addTestFile (File file)
将文件或目录添加到要安装的 APK 列表中。
参数 | |
---|---|
file |
File |
addTestFileName
public void addTestFileName (String fileName)
将文件名添加到要安装的 APK 列表中。
参数 | |
---|---|
fileName |
String |
getDevice
public ITestDevice getDevice ()
返回准备器应该应用到的设备。
返回 | |
---|---|
ITestDevice |
抛出 | |
---|---|
|
com.android.tradefed.targetprep.TargetSetupError |
TargetSetupError |
getTestsFileName
publicgetTestsFileName ()
返回指定的测试 APK 名称列表的副本。
返回 | |
---|---|
|
isCleanUpEnabled
public boolean isCleanUpEnabled ()
如果在拆解期间清除 APK,则返回 True。
返回 | |
---|---|
boolean |
isInstantMode
public final boolean isInstantMode ()
返回是否已启用免安装模式安装的指示值。
返回 | |
---|---|
boolean |
reportDependencies(报告依赖项)
publicreportDependencies ()
返回 | |
---|---|
|
setAaptVersion
public void setAaptVersion (AaptParser.AaptVersion aaptVersion)
设置用于 APK 解析的 AAPT 版本。
参数 | |
---|---|
aaptVersion |
AaptParser.AaptVersion |
setAltDir
public void setAltDir (File altDir)
设置备用目录。
参数 | |
---|---|
altDir |
File |
setAltDirBehavior
public void setAltDirBehavior (AltDirBehavior altDirBehavior)
设置备用目录行为。
参数 | |
---|---|
altDirBehavior |
AltDirBehavior |
setCleanApk
public void setCleanApk (boolean shouldClean)
设置是否应在拆解 (tearDown) 时清理已安装的 APK
参数 | |
---|---|
shouldClean |
boolean |
setForceQueryable
public void setForceQueryable (boolean forceQueryable)
强制查询的默认值为 true。如果要将 apk 更新为 false,请将其更新为 false 应该无法查询
参数 | |
---|---|
forceQueryable |
boolean |
setInstantMode
public final void setInstantMode (boolean mode)
设置在安装 apk 时是否应使用 --instant。如果存在以下情况,则不会产生任何影响: 已设置强制安装模式。
参数 | |
---|---|
mode |
boolean |
setShouldGrantPermission
public void setShouldGrantPermission (boolean shouldGrant)
如果提供了 userId,则可以为 APK 安装设置 grantPermission。
参数 | |
---|---|
shouldGrant |
boolean |
设置
public void setUp (ITestDevice device, IBuildInfo buildInfo)
<ph type="x-smartling-placeholder"></ph>
此方法已废弃。
临时向后兼容回调。
参数 | |
---|---|
device |
ITestDevice |
buildInfo |
IBuildInfo |
抛出 | |
---|---|
BuildError |
|
DeviceNotAvailableException |
|
TargetSetupError |
设置
public void setUp (TestInformation testInfo)
参数 | |
---|---|
testInfo |
TestInformation |
抛出 | |
---|---|
BuildError |
|
DeviceNotAvailableException |
|
TargetSetupError |
setUserId
public void setUserId (int userId)
如果应为特定用户安装该 apk,则设置要为该用户安装 apk 的用户的 ID。
参数 | |
---|---|
userId |
int |
拆解
public void tearDown (TestInformation testInfo, Throwable e)
参数 | |
---|---|
testInfo |
TestInformation |
e |
Throwable |
抛出 | |
---|---|
DeviceNotAvailableException |
受保护的方法
可获取增量安装会话构建器
protected IncrementalInstallSession.Builder getIncrementalInstallSessionBuilder ()
初始化会话构建器以逐步安装测试应用。
返回 | |
---|---|
IncrementalInstallSession.Builder |
getLocalPathForFilename
protected File getLocalPathForFilename (TestInformation testInfo, String apkFileName)
根据 build 信息中的测试工件信息解析实际的 APK 路径。
参数 | |
---|---|
testInfo |
TestInformation :调用的 TestInformation 。 |
apkFileName |
String :要安装的 APK 的文件名 |
返回 | |
---|---|
File |
ERROR(/File) 表示主机上的实体 APK 文件,null (如果文件
不存在。 |
抛出 | |
---|---|
TargetSetupError |
增量安装
protected void installPackageIncrementally (IncrementalInstallSession.Builder builder)
启动测试应用的增量安装会话。
参数 | |
---|---|
builder |
IncrementalInstallSession.Builder :增量安装会话的 Builder 对象。 |
抛出 | |
---|---|
|
com.android.tradefed.targetprep.TargetSetupError |
TargetSetupError |
安装者
protected void installer (TestInformation testInfo,appFilesAndPackages)
尝试在设备上安装软件包或拆分软件包。
参数 | |
---|---|
testInfo |
TestInformation :调用的 TestInformation |
appFilesAndPackages |
:要安装的 APK 及其软件包。 |
抛出 | |
---|---|
DeviceNotAvailableException |
|
TargetSetupError |
parsePackageName
protected String parsePackageName (File testAppFile)
从测试应用获取软件包名称。
参数 | |
---|---|
testAppFile |
File |
返回 | |
---|---|
String |
抛出 | |
---|---|
TargetSetupError |
resolveApkFiles(解析 ApkFiles)
protectedresolveApkFiles (TestInformation testInfo, apkFiles)
帮助将某个 APK 解析到其文件和软件包中。
参数 | |
---|---|
testInfo |
TestInformation |
apkFiles |
|
返回 | |
---|---|
|
抛出 | |
---|---|
DeviceNotAvailableException |
|
TargetSetupError |
setTestInformation
protected void setTestInformation (TestInformation testInfo)
参数 | |
---|---|
testInfo |
TestInformation |
removePackage
protected void uninstallPackage (ITestDevice device, String packageName)
尝试从设备中移除软件包。
参数 | |
---|---|
device |
ITestDevice |
packageName |
String |
抛出 | |
---|---|
DeviceNotAvailableException |