嵌套类 |
---|
class | ITestDevice.ApexInfo 一个简单的结构类,用于存储有关单个 APEX 的信息 |
class | ITestDevice.MountPointInfo 一个简单的结构类,用于存储有关单个安装点的信息 |
公共方法 |
---|
abstract boolean | canSwitchToHeadlessSystemUser () 返回是否允许切换到无头SYSTEM用户。 |
abstract boolean | checkConnectivity () 检查设备是否具有网络连接。 |
abstract boolean | clearErrorDialogs () 尝试关闭设备 UI 上当前显示的任何错误对话框。 |
abstract void | clearLastConnectedWifiNetwork () 清除上次连接的 wifi 网络。 |
abstract boolean | connectToWifiNetwork ( wifiSsidToPsk, boolean scanSsid) connectToWifiNetwork ( wifiSsidToPsk, boolean scanSsid) 连接到 wifi 网络。 |
abstract boolean | connectToWifiNetwork ( wifiSsidToPsk) connectToWifiNetwork ( wifiSsidToPsk) 连接到 wifi 网络。 |
abstract boolean | connectToWifiNetwork (String wifiSsid, String wifiPsk) 连接到 wifi 网络。 |
abstract boolean | connectToWifiNetwork (String wifiSsid, String wifiPsk, boolean scanSsid) 连接到 wifi 网络。 |
abstract boolean | connectToWifiNetworkIfNeeded (String wifiSsid, String wifiPsk, boolean scanSsid) connectToWifiNetwork(String, String) 的一种变体,仅当设备当前没有网络连接时才进行连接。 |
abstract boolean | connectToWifiNetworkIfNeeded (String wifiSsid, String wifiPsk) connectToWifiNetwork(String, String) 的一种变体,仅当设备当前没有网络连接时才进行连接。 |
abstract int | createUser (String name) 创建一个具有给定名称和默认标志 0 的用户。 |
abstract int | createUser (String name, boolean guest, boolean ephemeral, boolean forTesting) 使用给定名称和提供的标志创建用户 |
abstract int | createUser (String name, boolean guest, boolean ephemeral) 使用给定名称和提供的标志创建用户 |
abstract int | createUserNoThrow (String name) 创建一个具有给定名称和默认标志 0 的用户。 |
abstract void | deregisterDeviceActionReceiver ( IDeviceActionReceiver deviceActionReceiver) 删除已注册的IDeviceActionReceiver 。 |
abstract void | disableKeyguard () 尝试禁用键盘保护。 |
abstract boolean | disableNetworkMonitor () 禁用设备上的网络监控。 |
abstract boolean | disconnectFromWifi () 与 WiFi 网络断开连接。 |
abstract boolean | doesFileExist (String deviceFilePath, int userId) 用于确定给定用户的设备上的文件是否存在的帮助程序方法。 |
abstract File | dumpHeap (String process, String devicePath) 尝试从 system_server 转储堆。 |
abstract boolean | enableNetworkMonitor () 启用设备上的网络监控。 |
abstract | getActiveApexes () 获取有关设备上激活的 APEX 的信息。 |
abstract | getAllSettings (String namespace) 返回请求的命名空间的键值对。 |
abstract String | getAndroidId (int userId) 查找并返回与 userId 关联的 android-id,如果未找到则返回 null。 |
abstract | getAndroidIds () 创建一个找到匹配用户 ID 的 Android ID 地图。 |
abstract PackageInfo | getAppPackageInfo (String packageName) 获取有关设备上安装的软件包的信息。 |
abstract | getAppPackageInfos () 获取设备上安装的软件包的信息。 |
abstract InputStreamSource | getBugreport () 从设备检索错误报告。 |
abstract InputStreamSource | getBugreportz () 从设备检索错误报告。 |
abstract DeviceFoldableState | getCurrentFoldableState () 返回设备当前的可折叠状态,如果发生某些问题,则返回 null。 |
abstract int | getCurrentUser () 返回当前运行用户的id。 |
abstract | getFoldableStates () 返回设备上可折叠状态的列表。 |
abstract | getInstalledPackageNames () 获取设备上存在的应用程序包名称。 |
abstract String | getIpAddress () 获取设备的IP地址。 |
abstract KeyguardControllerState | getKeyguardState () 返回一个对象以获取键盘保护的当前状态,如果不支持,则返回 null。 |
abstract Integer | getMainUserId () 返回主用户 ID。 |
abstract | getMainlineModuleInfo () 获取有关设备上安装的主线模块的信息。 |
abstract int | getMaxNumberOfRunningUsersSupported () 获取支持的同时运行用户的最大数量。 |
abstract int | getMaxNumberOfUsersSupported () 获取支持的最大用户数。 |
abstract TestDeviceOptions | getOptions () 获取设备的测试选项。 |
abstract Integer | getPrimaryUserId () 返回主要用户 ID。 |
abstract InputStreamSource | getScreenshot () 从设备抓取屏幕截图。 |
abstract InputStreamSource | getScreenshot (String format, boolean rescale) 从设备抓取屏幕截图。 |
abstract InputStreamSource | getScreenshot (String format) 从设备抓取屏幕截图。 |
abstract InputStreamSource | getScreenshot (long displayId) 从给定显示 ID 的设备抓取屏幕截图。 |
abstract String | getSetting (String namespace, String key) 请参阅getSetting(int, String, String) 并在系统用户上执行。 |
abstract String | getSetting (int userId, String namespace, String key) 返回所请求设置的值。 |
abstract | getUninstallablePackageNames () 获取可卸载的应用程序包名称。 |
abstract int | getUserFlags (int userId) 查找并返回给定用户的标志。 |
abstract | getUserInfos () 获取设备上 useId 到UserInfo 的 Map。 |
abstract int | getUserSerialNumber (int userId) 如果找到,则返回与 userId 关联的序列号,在任何其他情况下返回 -10000。 |
abstract boolean | hasFeature (String feature) 检查设备上是否有可用的功能。 |
abstract String | installPackage (File packageFile, boolean reinstall, String... extraArgs) 在设备上安装 Android 软件包。 |
abstract String | installPackage (File packageFile, boolean reinstall, boolean grantPermissions, String... extraArgs) 在设备上安装 Android 软件包。 |
abstract String | installPackageForUser (File packageFile, boolean reinstall, boolean grantPermissions, int userId, String... extraArgs) 在设备上为给定用户安装 Android 软件包。 |
abstract String | installPackageForUser (File packageFile, boolean reinstall, int userId, String... extraArgs) 在设备上为给定用户安装 Android 软件包。 |
default String | installPackages ( packageFiles, boolean reinstall, String... extraArgs) installPackages ( packageFiles, boolean reinstall, String... extraArgs) 安装由多个 APK 文件(一个主包和额外的拆分包)组成的 Android 应用程序。 |
default String | installPackages ( packageFiles, boolean reinstall, boolean grantPermissions, String... extraArgs) installPackages ( packageFiles, boolean reinstall, boolean grantPermissions, String... extraArgs) 安装由 Android 设备上的多个 APK 文件(一个主包和额外的拆分包)组成的 Android 应用程序。 |
default String | installPackagesForUser ( packageFiles, boolean reinstall, boolean grantPermissions, int userId, String... extraArgs) installPackagesForUser ( packageFiles, boolean reinstall, boolean grantPermissions, int userId, String... extraArgs) 为给定用户安装由多个 APK 文件(一个主包和额外的拆分包)组成的 Android 应用程序。 |
default String | installPackagesForUser ( packageFiles, boolean reinstall, int userId, String... extraArgs) installPackagesForUser ( packageFiles, boolean reinstall, int userId, String... extraArgs) 为给定用户安装由多个 APK 文件(一个主包和额外的拆分包)组成的 Android 应用程序。 |
default String | installRemotePackages ( remoteApkPaths, boolean reinstall, String... extraArgs) installRemotePackages ( remoteApkPaths, boolean reinstall, String... extraArgs) 安装由 Android 设备上的多个 APK 文件(一个主包和额外的拆分包)组成的 Android 应用程序。 |
default String | installRemotePackages ( remoteApkPaths, boolean reinstall, boolean grantPermissions, String... extraArgs) installRemotePackages ( remoteApkPaths, boolean reinstall, boolean grantPermissions, String... extraArgs) 安装由 Android 设备上的多个 APK 文件(一个主包和额外的拆分包)组成的 Android 应用程序。 |
abstract boolean | isHeadlessSystemUserMode () 返回设备是否使用无头系统用户模式。 |
abstract boolean | isMainUserPermanentAdmin () 返回主用户是否是永久管理员且无法删除或降级为非管理员状态。 |
abstract boolean | isMultiUserSupported () 确定是否支持多用户。 |
abstract boolean | isPackageInstalled (String packageName) 查询设备中给定的软件包名称,以检查它当前是否已安装。 |
abstract boolean | isPackageInstalled (String packageName, String userId) 查询设备中给定的软件包名称和给定的用户 ID,以检查当前是否已为该用户安装。 |
abstract boolean | isUserRunning (int userId) 检查给定用户是否正在运行。 |
abstract boolean | isUserSecondary (int userId) 根据其标志返回指定用户是否为次要用户。 |
abstract boolean | isUserVisible (int userId) 检查给定用户是否可见。 |
abstract boolean | isUserVisibleOnDisplay (int userId, int displayId) 检查给定用户在给定显示中是否可见。 |
abstract boolean | isVisibleBackgroundUsersOnDefaultDisplaySupported () 返回设备是否允许用户在ERROR(/java.android.view.Display#DEFAULT_DISPLAY) 中在后台启动可见。 |
abstract boolean | isVisibleBackgroundUsersSupported () 返回设备是否允许用户在后台启动可见。 |
abstract boolean | isWifiEnabled () 测试 wifi 是否已启用。 |
abstract | listDisplayIds () 收集“dumpsys SurfaceFlinger”报告的设备上可用显示器 ID 的列表。 |
abstract | listDisplayIdsForStartingVisibleBackgroundUsers () 获取可用于start a user visible in the background 显示列表。 |
abstract | listUsers () 获取设备上的用户列表。 |
abstract boolean | logBugreport (String dataName, ITestLogger listener) 获取错误报告并将其记录给报告者的帮助方法。 |
abstract void | registerDeviceActionReceiver ( IDeviceActionReceiver deviceActionReceiver) 为此设备注册一个IDeviceActionReceiver 。 |
abstract boolean | removeAdmin (String componentName, int userId) 删除给定用户中的给定设备管理员,如果成功则返回true ,否则返回false 。 |
abstract void | removeOwners () 尽最大努力删除所有现有的设备配置文件所有者。 |
abstract boolean | removeUser (int userId) 从设备中删除给定用户。 |
abstract boolean | setDeviceOwner (String componentName, int userId) 将设备管理组件设置为给定用户的设备所有者。 |
abstract void | setSetting (String namespace, String key, String value) 请参阅setSetting(int, String, String, String) 并在系统用户上执行。 |
abstract void | setSetting (int userId, String namespace, String key, String value) 将设置值添加到给定用户的命名空间。 |
abstract boolean | startUser (int userId) 如果给定用户当前已停止,则在后台启动该用户。 |
abstract boolean | startUser (int userId, boolean waitFlag) 如果给定用户当前已停止,则在后台启动该用户。 |
abstract boolean | startVisibleBackgroundUser (int userId, int displayId, boolean waitFlag) 在后台启动给定用户,在给定显示中可见(即允许用户在该显示中启动活动)。 |
abstract boolean | stopUser (int userId, boolean waitFlag, boolean forceFlag) 停止给定用户。 |
abstract boolean | stopUser (int userId) 停止给定用户。 |
abstract boolean | switchUser (int userId) 切换到另一个具有默认超时的用户 ID。 |
abstract boolean | switchUser (int userId, long timeout) 切换到另一个用户 ID,并以提供的超时为截止时间。 |
abstract Bugreport | takeBugreport () 获取错误报告并将其返回到Bugreport 对象中以进行处理。 |
abstract String | uninstallPackage (String packageName) 从设备卸载 Android 软件包。 |
abstract String | uninstallPackageForUser (String packageName, int userId) 从设备上为给定用户卸载 Android 软件包。 |
公共方法
可以切换到Headless系统用户
public abstract boolean canSwitchToHeadlessSystemUser ()
返回是否允许切换到无头SYSTEM用户。
检查连接性
public abstract boolean checkConnectivity ()
检查设备是否具有网络连接。
退货 |
---|
boolean | 如果设备有有效的网络连接, true ,否则为false 。 |
清除错误对话框
public abstract boolean clearErrorDialogs ()
尝试关闭设备 UI 上当前显示的任何错误对话框。
退货 |
---|
boolean | 如果不存在对话框或对话框已成功清除, true 。否则为false 。 |
清除上次连接的 Wifi 网络
public abstract void clearLastConnectedWifiNetwork ()
清除上次连接的 wifi 网络。应在开始新调用时调用此函数,以避免在设备重新启动后连接到先前测试中使用的 wifi 网络。
连接到Wifi网络
public abstract boolean connectToWifiNetwork (String wifiSsid,
String wifiPsk,
boolean scanSsid)
连接到 wifi 网络。
打开 wifi 并阻止,直到成功连接到指定的 wifi 网络。建立连接后,实例将在每次重新启动后尝试恢复连接,直到调用
ITestDevice#disconnectFromWifi()
或
ITestDevice#clearLastConnectedWifiNetwork()
为止。
参数 |
---|
wifiSsid | String : 要连接的 wifi ssid |
wifiPsk | String : PSK 密码,如果未加密则为 null |
scanSsid | boolean :是否扫描该网络的隐藏 SSID。 |
退货 |
---|
boolean | 如果成功连接到 wifi 网络则为true 。否则为false |
如果需要连接到 Wifi 网络
public abstract boolean connectToWifiNetworkIfNeeded (String wifiSsid,
String wifiPsk,
boolean scanSsid)
connectToWifiNetwork(String, String)
的一种变体,仅当设备当前没有网络连接时才进行连接。
参数 |
---|
scanSsid | boolean : 是否扫描该网络的隐藏 SSID |
退货 |
---|
boolean | 如果成功连接到 wifi 网络则为true 。否则为false |
如果需要连接到 Wifi 网络
public abstract boolean connectToWifiNetworkIfNeeded (String wifiSsid,
String wifiPsk)
connectToWifiNetwork(String, String)
的一种变体,仅当设备当前没有网络连接时才进行连接。
退货 |
---|
boolean | 如果成功连接到 wifi 网络则为true 。否则为false |
创建用户
public abstract int createUser (String name)
创建一个具有给定名称和默认标志 0 的用户。
参数 |
---|
name | String :要在设备上创建的用户 |
创建用户
public abstract int createUser (String name,
boolean guest,
boolean ephemeral,
boolean forTesting)
使用给定名称和提供的标志创建用户
参数 |
---|
name | String :要在设备上创建的用户 |
guest | boolean : 在创建过程中启用用户标志 --guest |
ephemeral | boolean :在创建过程中启用用户标志 --ephemeral |
forTesting | boolean :在创建过程中启用测试标志 --for-testing |
创建用户
public abstract int createUser (String name,
boolean guest,
boolean ephemeral)
使用给定名称和提供的标志创建用户
参数 |
---|
name | String :要在设备上创建的用户 |
guest | boolean : 在创建过程中启用用户标志 --guest |
ephemeral | boolean :在创建过程中启用用户标志 --ephemeral |
创建用户不抛出
public abstract int createUserNoThrow (String name)
创建一个具有给定名称和默认标志 0 的用户。
参数 |
---|
name | String :要在设备上创建的用户 |
退货 |
---|
int | 创建的用户 ID 的整数或 -1 表示错误。 |
禁用键盘锁
public abstract void disableKeyguard ()
尝试禁用键盘保护。
首先等待输入调度准备就绪,这大约在设备报告 BOOT_COMPLETE 的同时发生,显然是异步的,因为当前的框架实现偶尔会出现竞争条件。然后发送命令以解除键盘保护(仅适用于非安全键盘)
禁用网络监视器
public abstract boolean disableNetworkMonitor ()
禁用设备上的网络监控。
退货 |
---|
boolean | 如果成功禁用监控则为true 。如果失败则为false 。 |
断开与Wifi的连接
public abstract boolean disconnectFromWifi ()
与 WiFi 网络断开连接。
从已知网络列表中删除所有网络并禁用 wifi。
退货 |
---|
boolean | 如果成功断开与 wifi 网络的连接,则为true 。如果断开连接失败,则false 。 |
文件是否存在
public abstract boolean doesFileExist (String deviceFilePath,
int userId)
用于确定给定用户的设备上的文件是否存在的帮助程序方法。
参数 |
---|
deviceFilePath | String : 要检查的设备上文件的绝对路径 |
userId | int :用于检查文件存在的用户 ID |
退货 |
---|
boolean | 如果文件存在true ,否则为false 。 |
转储堆
public abstract File dumpHeap (String process,
String devicePath)
尝试从 system_server 转储堆。调用者有责任清理转储的文件。
参数 |
---|
process | String :转储堆的设备进程的名称。 |
devicePath | String :设备上放置转储的路径。这必须是权限允许的位置。 |
启用网络监视器
public abstract boolean enableNetworkMonitor ()
启用设备上的网络监控。
退货 |
---|
boolean | true 如果监控启用成功。如果失败则为false 。 |
获取活动顶点
public abstract getActiveApexes ()
获取有关设备上激活的 APEX 的信息。
获取所有设置
public abstract getAllSettings (String namespace)
返回请求的命名空间的键值对。
参数 |
---|
namespace | String :必须是 {"system", "secure", "global"} 之一 |
获取AndroidId
public abstract String getAndroidId (int userId)
查找并返回与 userId 关联的 android-id,如果未找到则返回 null。
获取AndroidId
public abstract getAndroidIds ()
创建一个找到匹配用户 ID 的 Android ID 地图。无法保证每个用户 ID 都会在此函数中找到关联的 Android ID,因此某些用户 ID 可能会匹配 null。
退货 |
---|
| Android ID 地图找到匹配的用户 ID。 |
获取应用程序包信息
public abstract PackageInfo getAppPackageInfo (String packageName)
获取有关设备上安装的软件包的信息。
获取应用程序包信息
public abstract getAppPackageInfos ()
获取设备上安装的软件包的信息。
获取错误报告
public abstract InputStreamSource getBugreport ()
从设备检索错误报告。
这个实现保证在没有 SD 卡的设备上(或者尚未安装 SD 卡的设备)继续工作。
获取错误报告
public abstract InputStreamSource getBugreportz ()
从设备检索错误报告。 Zip 格式的错误报告包含主要错误报告和其他对调试有用的日志文件。
仅支持“adb 版本”> 1.0.36
获取当前可折叠状态
public abstract DeviceFoldableState getCurrentFoldableState ()
返回设备当前的可折叠状态,如果发生某些问题,则返回 null。
获取当前用户
public abstract int getCurrentUser ()
返回当前运行用户的id。如果出现错误,则返回-10000。
获取可折叠状态
public abstract getFoldableStates ()
返回设备上可折叠状态的列表。可以通过“cmd device_state print-states”获得。
获取安装包名称
public abstract getInstalledPackageNames ()
获取设备上存在的应用程序包名称。
获取IP地址
public abstract String getIpAddress ()
获取设备的IP地址。
退货 |
---|
String | 设备的 IP 地址,如果设备没有 IP 地址,则为null |
获取主用户ID
public abstract Integer getMainUserId ()
返回主用户 ID。
退货 |
---|
Integer | 有主用户则为主用户的userId,无主用户则为null。 |
获取主线模块信息
public abstract getMainlineModuleInfo ()
获取有关设备上安装的主线模块的信息。
public abstract int getMaxNumberOfRunningUsersSupported ()
获取支持的同时运行用户的最大数量。默认为 0。
public abstract int getMaxNumberOfUsersSupported ()
获取支持的最大用户数。默认为 0。
获取主用户ID
public abstract Integer getPrimaryUserId ()
返回主要用户 ID。
退货 |
---|
Integer | 有主用户则为主用户的userId,无主用户则为null。 |
获取屏幕截图
public abstract InputStreamSource getScreenshot (String format,
boolean rescale)
从设备抓取屏幕截图。建议使用getScreenshot(String)
代替 JPEG 编码以获得较小的尺寸。
参数 |
---|
format | String :支持PNG、JPEG |
rescale | boolean :是否应重新缩放屏幕截图以减小结果图像的大小 |
获取屏幕截图
public abstract InputStreamSource getScreenshot (String format)
从设备抓取屏幕截图。建议使用 getScreenshot(format) 代替 JPEG 编码以获得较小的尺寸
参数 |
---|
format | String :支持PNG、JPEG |
获取屏幕截图
public abstract InputStreamSource getScreenshot (long displayId)
从给定显示 ID 的设备抓取屏幕截图。格式为PNG。
TODO:扩展上述实现以支持“格式”和“重新缩放”
参数 |
---|
displayId | long :要从中获取屏幕截图的屏幕的显示 ID。 |
获取设置
public abstract String getSetting (int userId,
String namespace,
String key)
返回所请求设置的值。命名空间必须是以下之一:{"system", "secure", "global"}
参数 |
---|
userId | int |
namespace | String |
key | String |
退货 |
---|
String | 与用户的命名空间:键关联的值。如果没有找到则为空。 |
获取UninstallablePackageNames
public abstract getUninstallablePackageNames ()
获取可卸载的应用程序包名称。目前将其定义为非系统包和更新的系统包。
获取用户标志
public abstract int getUserFlags (int userId)
查找并返回给定用户的标志。标志在 Android 开源项目的“android.content.pm.UserInfo”类中定义。
退货 |
---|
int | 如果找到,则提供与 userId 关联的标志,在任何其他情况下为 -10000。 |
获取用户序列号
public abstract int getUserSerialNumber (int userId)
如果找到,则返回与 userId 关联的序列号,在任何其他情况下返回 -10000。
有特征
public abstract boolean hasFeature (String feature)
检查设备上是否有可用的功能。
参数 |
---|
feature | String :格式应为“feature: “ 或者 ” “ 直接地。 |
退货 |
---|
boolean | 如果找到功能则为 true,否则为 false。 |
安装包
public abstract String installPackage (File packageFile,
boolean reinstall,
String... extraArgs)
在设备上安装 Android 软件包。
参数 |
---|
packageFile | File :要安装的apk文件 |
reinstall | boolean : true 如果应重新安装 |
extraArgs | String :要传递的可选额外参数。有关可用选项,请参阅“adb shell pm -h”。 |
退货 |
---|
String | 带有错误代码的String ,如果成功则为null 。 |
安装包
public abstract String installPackage (File packageFile,
boolean reinstall,
boolean grantPermissions,
String... extraArgs)
在设备上安装 Android 软件包。
注意:只有需要在安装时显式控制授予运行时权限的用例才应调用此函数。
参数 |
---|
packageFile | File :要安装的apk文件 |
reinstall | boolean : true 如果应重新安装 |
grantPermissions | boolean :是否应在安装时授予所有运行时权限 |
extraArgs | String :要传递的可选额外参数。有关可用选项,请参阅“adb shell pm -h”。 |
退货 |
---|
String | 带有错误代码的String ,如果成功则为null 。 |
为用户安装包
public abstract String installPackageForUser (File packageFile,
boolean reinstall,
boolean grantPermissions,
int userId,
String... extraArgs)
在设备上为给定用户安装 Android 软件包。
注意:只有需要在安装时显式控制授予运行时权限的用例才应调用此函数。
参数 |
---|
packageFile | File :要安装的apk文件 |
reinstall | boolean : true 如果应重新安装 |
grantPermissions | boolean :是否应在安装时授予所有运行时权限 |
userId | int :要安装的整数用户 ID。 |
extraArgs | String :要传递的可选额外参数。有关可用选项,请参阅“adb shell pm -h”。 |
退货 |
---|
String | 带有错误代码的String ,如果成功则为null 。 |
为用户安装包
public abstract String installPackageForUser (File packageFile,
boolean reinstall,
int userId,
String... extraArgs)
在设备上为给定用户安装 Android 软件包。
参数 |
---|
packageFile | File :要安装的apk文件 |
reinstall | boolean : true 如果应重新安装 |
userId | int :要安装的整数用户 ID。 |
extraArgs | String :要传递的可选额外参数。有关可用选项,请参阅“adb shell pm -h”。 |
退货 |
---|
String | 带有错误代码的String ,如果成功则为null 。 |
安装包
public String installPackages ( packageFiles,
boolean reinstall,
String... extraArgs)
安装由多个 APK 文件(一个主包和额外的拆分包)组成的 Android 应用程序。请参阅“https://developer.android.com/studio/build/configure-apk-splits”了解如何将 apk 拆分为多个文件。
参数 |
---|
packageFiles | :本地apk文件 |
reinstall | boolean : true 如果应重新安装 |
extraArgs | String :要传递的可选额外参数。有关可用选项,请参阅“adb shell pm -h”。 |
退货 |
---|
String | 带有错误代码的String ,如果成功则为null 。 |
安装包
public String installPackages ( packageFiles,
boolean reinstall,
boolean grantPermissions,
String... extraArgs)
安装由 Android 设备上的多个 APK 文件(一个主包和额外的拆分包)组成的 Android 应用程序。请参阅“https://developer.android.com/studio/build/configure-apk-splits”了解如何将 apk 拆分为多个文件。
注意:只有需要在安装时显式控制授予运行时权限的用例才应调用此函数。
参数 |
---|
packageFiles | :要安装的远程apk文件路径 |
reinstall | boolean : true 如果应重新安装 |
grantPermissions | boolean :是否应在安装时授予所有运行时权限 |
extraArgs | String :要传递的可选额外参数。有关可用选项,请参阅“adb shell pm -h”。 |
退货 |
---|
String | 带有错误代码的String ,如果成功则为null 。 |
为用户安装包
public String installPackagesForUser ( packageFiles,
boolean reinstall,
boolean grantPermissions,
int userId,
String... extraArgs)
为给定用户安装由多个 APK 文件(一个主包和额外的拆分包)组成的 Android 应用程序。请参阅“https://developer.android.com/studio/build/configure-apk-splits”了解如何将 apk 拆分为多个文件。
注意:只有需要在安装时显式控制授予运行时权限的用例才应调用此函数。
参数 |
---|
packageFiles | :本地apk文件 |
reinstall | boolean : true 如果应重新安装 |
grantPermissions | boolean :是否应在安装时授予所有运行时权限 |
userId | int :要安装的整数用户 ID。 |
extraArgs | String :要传递的可选额外参数。有关可用选项,请参阅“adb shell pm -h”。 |
退货 |
---|
String | 带有错误代码的String ,如果成功则为null 。 |
为用户安装包
public String installPackagesForUser ( packageFiles,
boolean reinstall,
int userId,
String... extraArgs)
为给定用户安装由多个 APK 文件(一个主包和额外的拆分包)组成的 Android 应用程序。请参阅“https://developer.android.com/studio/build/configure-apk-splits”了解如何将 apk 拆分为多个文件。
参数 |
---|
packageFiles | :本地apk文件 |
reinstall | boolean : true 如果应重新安装 |
userId | int :要安装的整数用户 ID。 |
extraArgs | String :要传递的可选额外参数。有关可用选项,请参阅“adb shell pm -h”。 |
退货 |
---|
String | 带有错误代码的String ,如果成功则为null 。 |
安装远程包
public String installRemotePackages ( remoteApkPaths,
boolean reinstall,
String... extraArgs)
安装由 Android 设备上的多个 APK 文件(一个主包和额外的拆分包)组成的 Android 应用程序。请参阅“https://developer.android.com/studio/build/configure-apk-splits”了解如何将 apk 拆分为多个文件。
参数 |
---|
remoteApkPaths | :远程apk文件路径 |
reinstall | boolean : true 如果应重新安装 |
extraArgs | String :要传递的可选额外参数。有关可用选项,请参阅“adb shell pm -h”。 |
退货 |
---|
String | 带有错误代码的String ,如果成功则为null 。 |
安装远程包
public String installRemotePackages ( remoteApkPaths,
boolean reinstall,
boolean grantPermissions,
String... extraArgs)
安装由 Android 设备上的多个 APK 文件(一个主包和额外的拆分包)组成的 Android 应用程序。请参阅“https://developer.android.com/studio/build/configure-apk-splits”了解如何将 apk 拆分为多个文件。
注意:只有需要在安装时显式控制授予运行时权限的用例才应调用此函数。
参数 |
---|
remoteApkPaths | :远程apk文件路径 |
reinstall | boolean : true 如果应重新安装 |
grantPermissions | boolean :是否应在安装时授予所有运行时权限 |
extraArgs | String :要传递的可选额外参数。有关可用选项,请参阅“adb shell pm -h”。 |
退货 |
---|
String | 带有错误代码的String ,如果成功则为null 。 |
isHeadlessSystemUserMode
public abstract boolean isHeadlessSystemUserMode ()
返回设备是否使用无头系统用户模式。
是主用户永久管理员
public abstract boolean isMainUserPermanentAdmin ()
返回主用户是否是永久管理员且无法删除或降级为非管理员状态。
是否支持多用户
public abstract boolean isMultiUserSupported ()
确定是否支持多用户。
退货 |
---|
boolean | 如果支持多用户则为 true,否则为 false |
软件包已安装
public abstract boolean isPackageInstalled (String packageName)
查询设备中给定的软件包名称,以检查它当前是否已安装。
退货 |
---|
boolean | 如果报告软件包已安装,则为 true。否则为假。 |
软件包已安装
public abstract boolean isPackageInstalled (String packageName,
String userId)
查询设备中给定的软件包名称和给定的用户 ID,以检查当前是否已为该用户安装。
参数 |
---|
packageName | String :我们正在检查是否已安装的包。 |
userId | String :我们正在检查安装包的用户 ID。如果为空,则将使用主用户零。 |
退货 |
---|
boolean | 如果报告软件包已安装,则为 true。否则为假。 |
正在运行
public abstract boolean isUserRunning (int userId)
检查给定用户是否正在运行。
退货 |
---|
boolean | 如果用户正在运行,则为 true;在其他情况下为 false。 |
是用户次要的
public abstract boolean isUserSecondary (int userId)
根据其标志返回指定用户是否为次要用户。
退货 |
---|
boolean | 如果用户是次要用户,则为 true,否则为 false。 |
是否用户可见
public abstract boolean isUserVisible (int userId)
检查给定用户是否可见。
“可见”用户是与“人类”用户交互的用户,因此能够启动启动活动(通常在默认显示中)。
isUserVisibleOnDisplay
public abstract boolean isUserVisibleOnDisplay (int userId,
int displayId)
检查给定用户在给定显示中是否可见。
“可见”用户是与“人类”用户交互的用户,因此能够在该显示中启动启动活动。
参数 |
---|
userId | int |
displayId | int |
是否启用Wifi
public abstract boolean isWifiEnabled ()
测试 wifi 是否已启用。
检查设备上是否启用了 wifi。对于在不应使用 wifi 运行的测试(例如移动数据测试)之前断言 wifi 状态很有用。
退货 |
---|
boolean | 如果启用了 wifi,则为true 。如果禁用则为false |
列表显示 ID
public abstract listDisplayIds ()
收集“dumpsys SurfaceFlinger”报告的设备上可用显示器 ID 的列表。
日志错误报告
public abstract boolean logBugreport (String dataName,
ITestLogger listener)
获取错误报告并将其记录给报告者的帮助方法。
参数 |
---|
dataName | String :将报告错误报告的名称。 |
listener | ITestLogger :用于记录错误报告的ITestLogger 。 |
退货 |
---|
boolean | 如果记录成功则为 true,否则为 false。 |
删除管理员
public abstract boolean removeAdmin (String componentName,
int userId)
删除给定用户中的给定设备管理员,如果成功则返回true
,否则返回false
。
参数 |
---|
componentName | String :要删除的设备管理员。 |
userId | int :设备管理员所在的用户。 |
退货 |
---|
boolean | 如果成功则为 true,否则为 false。 |
删除所有者
public abstract void removeOwners ()
尽最大努力删除所有现有的设备配置文件所有者。
删除用户
public abstract boolean removeUser (int userId)
从设备中删除给定用户。
退货 |
---|
boolean | 如果我们成功删除用户,则为 true,否则为 false。 |
设置设备所有者
public abstract boolean setDeviceOwner (String componentName,
int userId)
将设备管理组件设置为给定用户的设备所有者。
参数 |
---|
componentName | String :设备管理员成为设备所有者。 |
userId | int :设备所有者所在的用户。 |
退货 |
---|
boolean | 如果成功则为 true,否则为 false。 |
设置设置
public abstract void setSetting (int userId,
String namespace,
String key,
String value)
将设置值添加到给定用户的命名空间。某些设置仅在重新启动后才可用。命名空间必须是以下之一:{"system", "secure", "global"}
参数 |
---|
userId | int |
namespace | String |
key | String |
value | String |
启动用户
public abstract boolean startUser (int userId)
如果给定用户当前已停止,则在后台启动该用户。如果用户已经在后台运行,则此方法是 NOOP。
退货 |
---|
boolean | 如果用户在后台成功启动,则为 true。 |
启动用户
public abstract boolean startUser (int userId,
boolean waitFlag)
如果给定用户当前已停止,则在后台启动该用户。如果用户已经在后台运行,则此方法是 NOOP。可以提供额外的标志来等待操作生效。
参数 |
---|
userId | int : 在后台启动的用户 |
waitFlag | boolean :将使命令等待,直到用户启动并解锁。 |
退货 |
---|
boolean | 如果用户在后台成功启动,则为 true。 |
启动可见背景用户
public abstract boolean startVisibleBackgroundUser (int userId,
int displayId,
boolean waitFlag)
在后台启动给定用户,在给定显示中可见(即允许用户在该显示中启动活动)。
注意:此命令不会检查用户是否存在、显示是否可用、 device supports such feature
等。
参数 |
---|
userId | int : 在后台启动的用户 |
displayId | int : 显示开始用户可见 |
waitFlag | boolean :将使命令等待,直到用户启动并解锁。 |
退货 |
---|
boolean | true 如果用户成功启动并在后台可见。 |
停止用户
public abstract boolean stopUser (int userId,
boolean waitFlag,
boolean forceFlag)
停止给定用户。可以提供额外的标志来等待操作生效,并强制终止用户。无法停止当前用户和系统用户。
参数 |
---|
userId | int :要停止的用户。 |
waitFlag | boolean :将使命令等待,直到用户停止。 |
forceFlag | boolean :将强制停止用户。 |
退货 |
---|
boolean | 如果用户已成功停止,则为 true。 |
停止用户
public abstract boolean stopUser (int userId)
停止给定用户。如果用户已经停止,则此方法是 NOOP。无法停止当前用户和系统用户。
退货 |
---|
boolean | 如果用户已成功停止,则为 true。 |
切换用户
public abstract boolean switchUser (int userId)
切换到另一个具有默认超时的用户 ID。 switchUser(int, long)
。
退货 |
---|
boolean | 如果新的 userId 与 userId 提供者匹配,则为 True。否则为假。 |
切换用户
public abstract boolean switchUser (int userId,
long timeout)
切换到另一个用户 ID,并以提供的超时为截止时间。用户更改成功后尝试禁用键盘保护。
参数 |
---|
userId | int |
timeout | long :在切换用户失败返回 false 之前等待。 |
退货 |
---|
boolean | 如果新的 userId 与 userId 提供者匹配,则为 True。否则为假。 |
卸载包
public abstract String uninstallPackage (String packageName)
从设备卸载 Android 软件包。
参数 |
---|
packageName | String : 要卸载的 Android 包 |
退货 |
---|
String | 带有错误代码的String ,如果成功则为null 。 |
卸载用户包
public abstract String uninstallPackageForUser (String packageName,
int userId)
从设备上为给定用户卸载 Android 软件包。
参数 |
---|
packageName | String : 要卸载的 Android 包 |
userId | int :要卸载的整数用户 ID。 |
退货 |
---|
String | 带有错误代码的String ,如果成功则为null 。 |
本页面上的内容和代码示例受内容许可部分所述许可的限制。Java 和 OpenJDK 是 Oracle 和/或其关联公司的注册商标。
最后更新时间 (UTC):2023-07-19。
[]
[]