代码之家  ›  专栏  ›  技术社区  ›  greywolf82

应用程序与辅助功能服务的交互

  •  1
  • greywolf82  · 技术社区  · 9 年前

    我想知道是否有可能通过可访问性操作自动化某些操作。根据Android文档,应用程序可以调用 performAction 使用 AccessibilityNodeInfo 但需要注意的是:只有当请求来自AccessibilityService时,才能执行操作。这是否意味着可以在调用上下文中执行此操作 onAccessibilityEvent() 只有如果我从活动绑定到服务以执行某个操作,它是否有效?如果没有,我看到的唯一解决方案是向服务推送命令,并在第一次调用 onAccessibility事件() ,我错过了什么吗?

    1 回复  |  直到 9 年前
        1
  •  1
  •   ProllyGeek    9 年前

    让我们澄清一些问题:

    可访问性服务可以配置为接收特定类型 的可访问性事件,仅侦听特定的包,获取事件 在给定的时间范围内仅从每种类型中检索一次,检索窗口 内容、指定设置活动等。

    基本上 onAccessibilityEvent() 是AccessibilityEvents的回调。

    因此,假设该服务只是具有特定权限的侦听器,可以执行特定操作,例如 AccessibilityEvent.getSource() 它将返回 AccessibilityNodeInfo .

    我可以基于此侦听器执行操作(调用)吗?

    答:是的,当然可以。