文章目录
前言
无障碍技术在当今国内市场上,广泛用于有声小说的阅读,商城类应用的自动安装。可以通过编写无障碍脚本,来实现模拟人对手机的操作,减少人工成本。无障碍技术是一把双刃剑,我们技术人员,虽然从来只关心技术的实现,但是也要从社会角度,价值观去考虑技术的应用。比方我们只是提供了一把菜刀,那么你永远无法预知这把刀是会被应用在什么用途,所以不要盲目听从安排,要明确自己做出来的工具的用途,关于这点本人在最近吃了很大的亏,也进行了深刻的反思。以上都是题外话,共勉,接下来进入正文。
AccessibilityService 无障碍的关键点
知己知彼,百战不殆。我们先了解无障碍能做什么,再学习怎么去对抗他。无障碍的实现原理和方法,可以在官方或者网上找到很多demo,入门成本可以说是很低的,这里不细说。关键还是在日常开发中,会遇到各种屏幕,系统,手机厂家的兼容水土不服,这些只能靠自己慢慢摸索。
无障碍技术,其实大体分为四个关键动作。第一个是匹配,第二个是点击,第三个是输入。第四个是滑动。接下来会逐一解析。
一、匹配(寻找控件)
举例现在有一个场景,需要找到【登录】这个按钮控件(button)。通过无障碍寻找【登录】这个button,常用的有四种方式。在此,先要学习使用无障碍开发一个最为重要的辅助工具【Uiautomatorviewer】。这是AndroidStudio的自带工具,关于这个控件的使用方法,随便搜索就有很多教程,这里就不造轮子了。