开发者

Android自动化如何获取视图元素属性(最新推荐)

开发者 https://www.devze.com 2024-08-10 11:08 出处:网络 作者: venblog
目录使用uiautomatorviewer获取视图元素Windows上启动UI Automator通过文件资源管理器启动通过命令提示符启动​​​​​​​MAC上启动UI Automator通过终端启动获取视图元素在做android自动化时候,我们需要知道视图
目录
  • 使用uiautomatorviewer获取视图元素
    • Windows上启动UI Automator
      • 通过文件资源管理器启动
      • 通过命令提示符启动
      • ​​​​​​​MAC上启动UI Automator
      • 通过终端启动
    • 获取视图元素

    在做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环境变量中,使用以vUCRZ下命令回车键启动:
     /Users/你的用户名/Library/Android/sdk/tools/bin/uiautomatorviewer
    • ​​​​​​​如果tools目录已添加到PATH,直接输入以下命令回车键启动:
    uihttp://www.devze.comautomatorviewer

    uiautomatorviewer启动后的界面

    Android自动化如何获取视图元素属性(最新推荐)

    获取视图元素

    1. 连接手机(开启usb调试)

    Android自动化如何获取视图元素属性(最新推荐)

    2. 截取视图

    Android自动化如何获取视图元素属性(最新推荐)

    3. 选择目标元素

    比如我们选中微信启动图标后,在右下角就能查看元素的属性了,右上角是视图层级

    Android自动化如何获取视图元素属性(最新推荐)

    当然除了使用uiautomatorviewer获取视图元素外,还可以使用下面的几个框架来获取,就是要多花些功夫熟悉学习下

    uiautomator2

    appuim

    Airtest

    拿到视图元素属性后,我们就可以通过属性的text、resource-id、class、或者bounds(元素在屏幕中的位置)获取元素来执行各种操作,甚至也可以通过视图结构去定位获取元素等等。

    如何获取元素以及执行各种操作?

    通过usb连接手机设备,通过adb命令来操作,这种方式优点是权限高操作准确,缺点就是需要连线,对应的封装库可以使用adbutihttp://www.devze.comls

    通过开发Android应用,继承实现AccessibilityService无障碍辅助服务,通过AccessibilityService的api来获取元素,获取到元素之后就可以对元素进行点击、长按、输入、列表滑动等操作,这种方式优点适用于无线的自动化场景,缺点就是执行操作权限和准确度不好控制,对应的开源库可以使用Assists

    到此这篇关于Android自动化-如何获取视图元素属性?的文章就介绍到这了,更多相关Android视图元素属性内容请搜索编程客栈(www.devze.com)以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程客栈(www.devze.com)!

    0

    精彩评论

    暂无评论...
    验证码 换一张
    取 消