我想知道是否可以通过可访问性操作使某些操作自动化。根据Android文档,该应用程序可以使用performAction
调用AccessibilityNodeInfo
,但需要注意:仅当从AccessibilityService发出请求时,才可以执行操作。这是否意味着只能在调用onAccessibilityEvent()
的上下文中执行此操作?如果我将活动从活动绑定到服务以执行操作,它是否起作用?如果没有,我看到的唯一解决方案是将命令推向服务,并在第一次调用onAccessibilityEvent()
时执行它,我是否丢失了任何内容?
最佳答案
让我们澄清一些要点:
可访问性服务可以配置为接收特定类型
辅助功能事件,仅侦听特定程序包,获取事件
在给定的时间范围内从每种类型仅获取一次,检索窗口
内容,指定设置活动等。
基本上onAccessibilityEvent()
是AccessibilityEvents的回调。
因此,可以说此服务只是具有特定权限的侦听器,可以执行特定操作,例如AccessibilityEvent.getSource()
,它将返回AccessibilityNodeInfo
。
我可以基于此侦听器执行动作(调用)吗?
答:是的,当然可以。