首页 > 编程知识 正文

Android无障碍服务不关闭,安卓无障碍开发

时间:2023-05-03 07:50:41 阅读:142689 作者:488

文章目录前言框架介绍了目标界面寻找要素进行操作的系列文章,并与作者联系

前言

针对安卓无障碍开发和使用场景,封装了一个可应用于各种场景的快速开发框架。

框架介绍无障碍的本质是用代码模拟人机操作,因此流程清晰,可以进行:目标界面-找到操作元素-对应操作

因此,通过将对应过程封装到对应代码中,形成了通用的无障碍框架。

目标接口首先,代码必须始终关注当前是什么样的接口,诸如当前处于其APP状态、是否是APP的那个接口、接口中有哪些元素等信息

方法getWindows可以获取的所有AccessibilityWindowInfo信息基本上是用户可以看到的所有APP应用程序信息。

Android.accessibility service.accessibility service # get windows例如,状态栏导航栏导航栏中当前打开的程序输入法部分程序的浮动窗口

如果有AccessibilityWindowInfo对象,则通过从getRoot获取AccessibilityNodeInfo对象,然后从getPackageName获取程序的软件包名称,可以获取什么样的APP应用程序

Android.view.accessibilitywindowinfo # getrootandroid.view.accessibilitynodeinfo # get

为了找到要素,通过枚举AccessibilityNodeInfo节点,可以获得接口上的所有控制信息,实际上是AccessibilityNodeInfo信息

找到元素是在这些AccessibilityNodeInfo中判断目标。

无障碍能够识别的数据有限,使用最多的是AccessibilityNodeInfo的文本信息、坐标信息、类名的状态等。

所以可以通过:

匹配文本获得对应的元素匹配坐标,获得对应的元素匹配类名,获得对应的元素。 通常,类名匹配会获得许多因素的匹配状态,包括是否可以单击高级点(如是否有焦点并选中),以及是否可以通过匹配child node的分布组合来匹配目标元素

如果有要执行操作的元素,则表示存在AccessibilityNodeInfo对象。 后续操作请参考本人文章:

ACC安卓无障碍开发的一般操作

框架已经实现,并经过多年实践操作,证明了其稳定性和可行性。

框架是解析器,通过解析json脚本文件进行对应的处理

所以,可以动态地发布json,动态地更新json,达到远程控制的效果。

如果有合作的意愿,请联系本人。

系列文章ACC安卓无障碍发展入门ACC安卓无障碍发展通用操作ACC安卓无障碍发展手势操作ACC安卓无障碍发展框架作者群内有各(pian)种(ni)各(jin)样(qun)的大佬,等你来撩.

单击此QQ对话的该死空间添加此快速组

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。