在做Android自动化时候,我们需要知道视图有哪些元素,元素都有哪些属性,获取到属性我们才能获取到元素从而做自动化控制,所以做Android自动化获取元素属性是必要的第一步
获取视图元素属性最便捷的方式就是使用Android SDK中的 uiautomatorviewer,当你配置好Android的开发环境后就能直接使用 uiautomatorviewer。
使用uiautomatorviewer获取视图元素
Windows上启动UI Automator
确保已经安装了Android SDK。
通过文件资源管理器启动
- 打开文件资源管理器。
- 导航到你安装Android SDK的目录,通常是
C:\Users\你的用户名\AppData\Local\Android\Sdk\tools\bin
。 - 找到
uiautomatorviewer.bat
文件。 - 双击
uiautomatorviewer.bat
文件来启动UI Automator Viewer。
通过命令提示符启动
- 打开命令提示符(CMD)。
- 如果你还没有将Android SDK的
tools
目录添加到环境变量中,使用以下命令回车键启动:
C:\Users\你的用户名\AppData\Local\Android\Sdk\tools\bin\uiautomatorviewer.bat
- 如果tools目录已添加到环境变量,直接输入以下命令回车键启动:
uiautomatorviewer
Mac上启动UI Automator
确保已经安装了Android SDK。
通过Finder启动
- 打开Finder。
- 前往
/Users/你的用户名/Library/Android/sdk/tools/bin
目录。 - 双击
uiautomatorviewer
应用程序图标来启动它。
通过终端启动
- 打开终端(Terminal)。
- 如果你还没有将Android SDK的
tools
目录添加到PATH环境变量中,使用以下命令回车键启动:
/Users/你的用户名/Library/Android/sdk/tools/bin/uiautomatorviewer
- 如果tools目录已添加到PATH,直接输入以下命令回车键启动:
uiautomatorviewer
启动后的界面
获取视图元素
1. 连接手机(开启usb调试)
2. 截取视图
3. 选择目标元素
比如我们选中微信启动图标后,在右下角就能查看元素的属性了,右上角是视图层级
当然除了使用uiautomatorviewer获取视图元素外,还可以使用下面的几个框架来获取,就是要多花些功夫熟悉学习下
拿到视图元素属性后,我们就可以通过属性的text、resource-id、class、或者bounds(元素在屏幕中的位置)获取元素来执行各种操作,甚至也可以通过视图结构去定位获取元素等等。
如何获取元素以及执行各种操作?
-
通过usb连接手机设备,通过adb命令来操作,这种方式优点是权限高操作准确,缺点就是需要连线,对应的封装库可以使用adbutils
-
通过开发Android应用,继承实现AccessibilityService无障碍辅助服务,通过AccessibilityService的api来获取元素,获取到元素之后就可以对元素进行点击、长按、输入、列表滑动等操作,这种方式优点适用于无线的自动化场景,缺点就是执行操作权限和准确度不好控制,对应的开源库可以使用Assists
1.本站内容仅供参考,不作为任何法律依据。用户在使用本站内容时,应自行判断其真实性、准确性和完整性,并承担相应风险。
2.本站部分内容来源于互联网,仅用于交流学习研究知识,若侵犯了您的合法权益,请及时邮件或站内私信与本站联系,我们将尽快予以处理。
3.本文采用知识共享 署名4.0国际许可协议 [BY-NC-SA] 进行授权
4.根据《计算机软件保护条例》第十七条规定“为了学习和研究软件内含的设计思想和原理,通过安装、显示、传输或者存储软件等方式使用软件的,可以不经软件著作权人许可,不向其支付报酬。”您需知晓本站所有内容资源均来源于网络,仅供用户交流学习与研究使用,版权归属原版权方所有,版权争议与本站无关,用户本人下载后不能用作商业或非法用途,需在24个小时之内从您的电脑中彻底删除上述内容,否则后果均由用户承担责任;如果您访问和下载此文件,表示您同意只将此文件用于参考、学习而非其他用途,否则一切后果请您自行承担,如果您喜欢该程序,请支持正版软件,购买注册,得到更好的正版服务。
5.本站是非经营性个人站点,所有软件信息均来自网络,所有资源仅供学习参考研究目的,并不贩卖软件,不存在任何商业目的及用途
暂无评论内容