鸿蒙OS lAbilityDelegator
全局测试实用程序界面,用于添加 IAbilityMonitor 对象并控制功能的生命周期状态。
您可以调用 addAbilityMonitor(java.lang.String) 来添加IAbilityMonitor对象,以监视指定功能的生命周期状态。您还可以调用诸如 triggerClickEvent(ohos.aafwk.ability.Ability,ohos.agp.components.Component)之类的方法 来控制能力的生命周期状态并调度输入事件。
领域摘要
修饰符和类型 | 领域 | 描述 |
---|---|---|
静态整数 | 活性 | 指示该能力处于活动状态。 |
静态整数 | 背景 | 指示该能力处于后台状态。 |
静态整数 | 不活跃 | 指示该能力处于非活动状态。 |
静态整数 | 初始 | 指示该能力处于初始状态。 |
静态整数 | 未定义 | 表示该能力的生命周期状态未定义。 |
方法总结
修饰符和类型 | 方法 | 描述 |
---|---|---|
IAbilityMonitor | addAbilityMonitor(字符串 abilityName) | 基于指定的功能名称创建 IAbilityMonitor 对象,以监视功能的生命周期状态变化。 |
void | clearAllMonitors() | 清除保存在内存中的所有IAbilityMonitor对象。 |
整型 | getAbilitySliceState(AbilitySlice targetSlice) | 获取指定能力切片的生命周期状态。 |
整型 | getAbilityState(Ability ability) | 获得指定能力的生命周期状态。 |
List<AbilitySlice> | getAllAbilitySlice((Ability ability) | 获取指定能力的所有能力切片。 |
AbilitySlice | getCurrentAbilitySlice(Ability ability) | 获得指定能力的最高能力切片。 |
Ability | getCurrentTopAbility() | 获得当前正在显示的功能。 |
整型 | getMonitorsNum() | 获取保存在内存中的IAbilityMonitor对象的总数。 |
void | print(String msg) | 将日志信息打印到单元测试控制台。 |
void | removeAbilityMonitor(IAbilityMonitor监视器) | 从应用程序内存中删除指定的IAbilityMonitor对象。 |
布尔值 | runOnUIThreadSync(Runnable task) | 在UI线程上运行指定的任务并阻塞线程,直到任务完成。 |
Optional<Ability> | startAbilitySync(Intent intent) | 根据给定的Intent启动一项功能,并等待2秒钟以开始运行该功能,然后再返回。 |
Optional<Ability> | startAbilitySync(Intent intent, long timeout) | 根据给定的Intent启动一项功能,并等待指定的时间段才能开始运行该功能,然后再返回。 |
boolean | stopAbility(Ability ability) | 消灭指定的能力。 |
boolean | triggerClickEvent(Ability ability, Component view) | 将click事件调度到给定功能的指定Component对象,并等待对其进行处理。 |
boolean | triggerKeyEvent(Ability ability, KeyEvent keyEvent) | 将按键事件分配给给定的功能,然后等待其处理。 |
boolean | triggerTouchEvent(Ability ability, TouchEvent touchEvent) | 将触摸事件分配给给定的功能,然后等待其处理。 |
Optional<Ability> | waitAbilityMonitor(IAbilityMonitor monitor) | 等待并返回与在给定IAbilityMonitor中设置的条件匹配的Ability对象。 |
Optional<Ability> | waitAbilityMonitor(IAbilityMonitor monitor, long timeout) | 等待并返回与指定时间段内给定IAbilityMonitor中设置的条件匹配的Ability对象。 |
领域细节
活性
static final int有效
指示该能力处于活动状态。
也可以看看:
背景
静态最终int背景
指示该能力处于后台状态。
也可以看看:
不活跃
静态最终int不活动
指示该能力处于非活动状态。
也可以看看:
初始
静态最终 int INITIAL
指示该能力处于初始状态。
也可以看看:
未定义
static final int 未定义
表示该能力的生命周期状态未定义。
也可以看看:
方法细节
等待能力监控器
可选的 < Ability > waitAbilityMonitor(IAbilityMonitor监视器)
等待并返回与在给定IAbilityMonitor中设置的条件匹配的Ability对象 。
如果成功获得匹配的能力,则指定的IAbilityMonitor对象将无效。否则,您可以继续在waitAbilityMonitor(ohos.aafwk.ability.delegation.IAbilityMonitor)或waitAbilityMonitor(ohos.aafwk.ability.delegation.IAbilityMonitor,long)中使用它以获得技能。
参数:
参数名称 | 参数说明 |
---|---|
监控 | 指示用于监视功能的生命周期状态变化的IAbilityMonitor对象。 |
返回值:
如果其生命周期状态已更改并且与给定监视器匹配,则返回包含Ability对象的Optional对象;否则返回一个空的Optional对象。
等待能力监控器
Optional<Ability> waitAbilityMonitor(IAbilityMonitor monitor, long timeout)等待并返回与指定时间段内给定IAbilityMonitor中设置的条件匹配的Ability对象 。
如果成功获得匹配的能力,则指定的IAbilityMonitor对象将无效。否则,您可以继续在waitAbilityMonitor(ohos.aafwk.ability.delegation.IAbilityMonitor)或waitAbilityMonitor(ohos.aafwk.ability.delegation.IAbilityMonitor,long)中使用它以获得技能。
参数:
参数名称 | 参数说明 |
---|---|
监控 | 指示用于监视功能的生命周期状态变化的IAbilityMonitor对象。 |
超时 | 指示等待的最长时间(以毫秒为单位)。该值必须是一个正整数。 |
返回值:
如果其生命周期状态已更改并且与给定监视器匹配,则返回包含Ability对象的Optional对象;否则返回一个空的Optional对象。
启动能力同步
可选的 < Ability > startAbilitySync(Intent intent)
根据给定的Intent启动一项功能,并等待2秒钟以开始运行该功能,然后再返回。
如果2秒钟内没有启动任何功能,则将返回一个空的Optional对象。
参数:
参数名称 | 参数说明 |
---|---|
意图 | 指示启动该能力的意图。 |
返回值:
如果在2秒内成功启动了包含启动的 Ability 对象的 Optional 对象,则返回该对象;否则返回一个空的 Optional 对象。
在UI线程同步上运行
boolean runOnUIThreadSync(Runnable task)
在 UI 线程上运行指定的任务并阻塞线程,直到任务完成。
参数:
参数名称 | 参数说明 |
---|---|
任务 | 指示要运行的可运行任务。 |
返回值:
如果任务在 UI 线程上成功执行,则返回true;否则,返回 true。否则返回 false。
启动能力同步
Optional<Ability> startAbilitySync(Intent intent, long timeout)
根据给定的Intent启动一项功能,并等待指定的时间段才能开始运行该功能,然后再返回。
如果在超时指定的时间内没有启动任何能力,则将返回一个空的Optional对象。
参数:
参数名称 | 参数说明 |
---|---|
意图 | 指示启动该能力的意图。 |
超时 | 指示等待的最长时间(以毫秒为单位)。该值必须是一个正整数。 |
返回值:
如果在指定时间内成功启动了包含启动的 Ability 对象的 Optional 对象,则返回该对象;否则返回一个空的 Optional 对象。
停止能力
boolean stopAbility(Ability ability)
消灭指定的能力。
参数:
参数名称 | 参数说明 |
---|---|
能力 | 指示要销毁的能力对象。 |
返回值:
如果该能力被成功销毁,则返回true;否则返回true。否则返回false。
触发触摸事件
boolean triggerTouchEvent(Ability ability,TouchEvent touchEvent)
将触摸事件分配给给定的功能,然后等待其处理。
此方法是同步的,不能在UI线程上运行。否则,UI线程将被挂起。
参数:
参数名称 | 参数说明 |
---|---|
能力 | 指示能力对象。 |
触摸事件 | 指示要调度的触摸事件。 |
返回值:
如果成功调度touch事件,则返回true;否则,返回false。否则返回false。
布尔触发器Click事件
boolean triggerClickEvent(Ability ability, Component view)
将 click 事件调度到给定功能的指定 Component 对象,并等待对其进行处理。
此方法是同步的,不能在UI线程上运行。否则,UI线程将被挂起。
参数:
参数名称 | 参数说明 |
---|---|
能力 | 指示能力对象。 |
视图 | 指示点击功能的组成部分。 |
返回值:
如果成功调度了click事件,则返回true;否则,返回true。否则返回false。
触发按键事件
boolean triggerKeyEvent(能力,KeyEvent keyEvent)
将按键事件分配给给定的功能,然后等待其处理。
此方法是同步的,不能在UI线程上运行。否则,UI线程将被挂起。
参数:
参数名称 | 参数说明 |
---|---|
ability | 指示能力对象。 |
keyEvent | 指示要调度的关键事件。 |
返回值:
如果成功调度关键事件,则返回true;否则,返回true。否则返回false。
添加能力监控器
IAbilityMonitor addAbilityMonitor((字符串标记)
基于指定的功能名称创建 IAbilityMonitor对象,以监视功能的生命周期状态变化。
参数:
参数名称 | 参数说明 |
---|---|
ability Name | 指示监视功能的名称。 |
返回值:
返回创建的IAbilityMonitor对象。
获取显示器数量
int getMonitorsNum()
获取保存在内存中的IAbilityMonitor对象的总数 。
返回值:
返回IAbilityMonitor对象的总数。
清除所有监视器
无效clearAllMonitors()
清除保存在内存中的所有 IAbilityMonitor对象。
获取能力状态
int getAbilityState(Ability ability)
获得指定能力的生命周期状态。
参数:
参数名称 | 参数说明 |
---|---|
ability | 指示要获取其状态的Ability对象。 |
返回值:
返回能力的状态,可以是UNDEFINED等等。
删除能力监视器
void removeAbilityMonitor(IAbilityMonitor monitor)
从应用程序内存中删除指定的 IAbilityMonitor对象。
参数:
参数名称 | 参数说明 |
---|---|
monitor | 指示要删除的IAbilityMonitor对象。 |
打印
无效打印(String msg)
将日志信息打印到单元测试控制台。
参数:
参数名称 | 参数说明 |
---|---|
msg | 指示要打印的信息。 |
获得当前最高能力
能力 getCurrentTopAbility()
获得当前正在显示的功能。
返回值:
返回当前显示的能力。
获得能力切片状态
int getAbilitySliceState(AbilitySlice targetSlice)
获取指定能力切片的生命周期状态。
参数:
参数名称 | 参数说明 |
---|---|
targetSlice | 指示要获取其状态的AbilitySlice对象。 |
返回值:
返回能力切片的状态,该状态可以是未定义的,依此类推。
获得所有能力切片
获取指定能力的所有能力切片。
参数:
参数名称 | 参数说明 |
---|---|
ability | 指示能力对象。 |
返回值:
返回指定能力的所有能力切片的列表。
获得当前能力切片
AbilitySlice getCurrentAbilitySlice(Ability ability)
获得指定能力的最高能力切片。最高能力切片是指当前显示的能力切片。
参数:
参数名称 | 参数说明 |
---|---|
ability | 指示能力对象。 |
返回值:
返回指定能力的最高能力切片。
更多建议: