小知识分享:adb uiautomator 命令 dump ui 树信息
之前给大家分享过一篇文章,讲述如何通过 getevent/sendevent/input 命令向 android 手机设备接收和发送操作事件,来解决自动化脚本场景的需求。
其实还有一个小知识点需要补充一下,就是可以借助 uiautomator 命令 dump 当前页面的 ui hierarchy 信息。
一个完整的 uiautomator 命令类似:
adb shell uiautomator dump [--compressed] [file]
--compressed 参数:输出更加精简的 layout 布局信息,包括 android:id/content 在内的通用外层 ui 结构都被拿掉了;
file 参数:xml 格式输出结果文件,默认为 /sdcard/window_dump.xml;
还是老规矩,举个简单的例子。
~ yifeng$ adb shell uiautomator dump
UI hierchary dumped to: /sdcard/window_dump.xml
再通过 adb pull 命令将手机 sdcard 里的文件传输到电脑中。
adb pull /sdcard/window_dump.xml Desktop/
用 Sublime 软件打开,Indent XML 插件格式化后,就是这个样子:
<?xml version='1.0' encoding='UTF-8' standalone='yes' ?>
<hierarchy rotation="0"><node bounds="[0,0][1080,2340]" checkable="false" checked="false" class="android.widget.FrameLayout" clickable="false" content-desc="" enabled="true" focusable="false" focused="false" index="0" long-clickable="false" package="com.feng.test" password="false" resource-id="" scrollable="false" selected="false" text=""><node bounds="[48,128][341,208]" checkable="false" checked="false" class="android.widget.TextView" clickable="false" content-desc="" enabled="true" focusable="false" focused="false" index="0" long-clickable="false" package="com.feng.test" password="false" resource-id="" scrollable="false" selected="false" text="DemoApp"/><node bounds="[339,1224][741,1368]" checkable="false" checked="false" class="android.widget.Button" clickable="true" content-desc="" enabled="true" focusable="true" focused="false" index="1" long-clickable="false" package="com.feng.test" password="false" resource-id="com.feng.test:id/b_button" scrollable="false" selected="false" text="HELLO WORLD!"/></node>
</hierarchy>
当前页面完整的 UI 树结构信息都 dump 出来了,包括 view 的类名、资源 ID 和屏幕位置坐标等。
长按识别二维码,即可关注我
原创推荐
android getevent sendevent input 接收发送事件
禁用 testOnly 属性,解决 debug 包安装失败
解决 Adb Unavailable,尝试了一千种方案后
小知识分享:adb uiautomator 命令 dump ui 树信息相关推荐
- 东瓜小知识之《简单查询网卡的厂商信息》
东瓜小知识 第一步:查询本机的MAC地址 方法一:①按"win"+"R"键打开"运行"窗口,在窗口中输入cmd:②在Windows命令处理程 ...
- 网络工程师小知识:静态路由配置命令
一.什么是静态路由? 二.静态路由的特点! 三.静态路由的一些配置命令 四.实验配置命令 更多配置命令,评论区留言[私信R]"学习"免费分享 #网络工程师 #华为认证 #计算机网络 ...
- 传奇私服脱坑小知识分享一
每天上一当,当当不一样 传奇骗局有分2种,一种是针对游戏玩家的,另外一种是针对开服GM的 像玩家会遇到的比如有些人喜欢冒充商人去行骗,他和你说他是哪个行会的掌门,给你一个副掌门位置,降低你戒备心,和他 ...
- 【小知识】linux hash命令
先看一段shell: 判断环境中是否存在某命令 check_program_installed() { hash $1 > /dev/null 2>&1 if [ ...
- 计算机小知识分享,分享几小个计算机操作技巧
1. 自动登陆 单击开始→运行,输入"rundll32netplwiz.dll,UsersRunDll"(不带引号),然后在User Accounts中取消"Users ...
- 印章如何去蜡_手帐丨蜡封印章小知识分享
看一些欧洲老电影的时候,经常会有主角们坐在桌前用拆信刀,把印有蜡封的秘密信件打开的镜头. 信封口上那朱红色的蜡封凹印,既神秘又优雅.今天就来一一揭开蜡封印章的神秘面纱. ♔ 蜡封印章的由来 蜡封印章又 ...
- 乐理matlab频率表,乐理小知识:音高与国际谱
我们在初识乐理时,常遇到一个概念:音高,然而大多人对"音高"的概念,知其然而不知其所以然,今天作曲大师就带大家深入了解一下这个概念. 简单来说音高即音的高低,音的高低由发声物体的振 ...
- 沃谈小知识| 聊聊不明觉厉的“边缘计算”
[小二说] Hello,Hello,又到了周四 [沃谈物联]小知识分享如约而至 小二上线唠嗑啦~ 前两期话题都是 HiWoo Box工业物联网关 它还有个学名 "边缘计算网关" 本 ...
- 计算机主板外频,电脑装机小知识,了解外频和倍频的前身今世,掌握超频进阶小技巧...
进阶的超频小知识分享 喜欢超频的小伙伴一定对外频和倍频这两个概念并不陌生,CPU频率=外频X倍频.这些内容我在前面的超频小分享中已经基本谈到过. 但是你知道吗?在开始的时候,其实CPU频率和外频是一样 ...
最新文章
- mybatis plus generator配置
- LeetCode刷题记录(2)
- webapi+Quartz.NET解决若干定时程序同时运行的问题
- java for遍历hashmap_Java 使用for和while循环遍历HashMap的方法及示例代码
- 一道面试题目引发的思考
- AMR无限增发代币至任意以太坊地址的漏洞利用及修复过程
- 【android开发】:android真机测试
- IntelliJ IDEA设置maven
- depthmap资料总结
- python继承方式是基于原型吗_【Python】python 普通继承方式和super继承方式
- sitemesh2.4
- ni数据采集卡C语言API接口,NI数据采集卡
- CAD二次开发--自动加载插件
- NCS初探--基于nRF5340的blinky
- 服务器虚拟化的主要特点,网络虚拟化的七大特征
- 送书 | Python最优算法实战
- Ubuntu安装显卡驱动及设置3d桌面
- 互联网红利之道-流量变现
- Xen - Networking
- 小白尝试c++编写飞机大战