You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

如何用ADB命令列出Android应用当前焦点Activity的所有元素(ID/层级)?

如何用ADB命令列出Android当前Activity的所有UI元素

当然可以!你完全能通过ADB命令获取焦点Activity的所有UI元素信息,包括元素ID、层级结构、文本内容等。下面是具体的方法:

1. 导出当前UI层级结构到XML文件

最常用的命令是uiautomator dump,它会把当前屏幕的所有UI元素以XML格式导出:

  • 首先确保你的Android设备已通过ADB连接,执行:
    adb shell uiautomator dump /sdcard/ui_hierarchy.xml
    
  • 导出成功后,把这个XML文件拉到本地电脑查看:
    adb pull /sdcard/ui_hierarchy.xml ./
    

打开这个XML文件,你就能看到所有UI元素的详细信息:

  • 每个元素的resource-id属性就是它的唯一标识
  • 元素的嵌套关系就是UI的层级结构
  • 还能看到text(显示文本)、class(控件类型)、bounds(位置大小)等关键属性

2. 先确认当前焦点Activity(可选)

如果你想先确认当前处于焦点的是哪个Activity,可以执行这个命令:

adb shell dumpsys window windows | grep -E 'mCurrentFocus|mFocusedApp'

输出结果里会显示当前焦点Activity的包名和类名,确保你导出的是目标界面的UI结构。

3. 实时查看UI元素(进阶)

如果你不想导出文件,也可以直接在命令行查看导出的内容,执行:

adb shell uiautomator dump /dev/tty

这个命令会直接把XML内容输出到终端,适合快速查看。

内容的提问来源于stack exchange,提问作者Iman

火山引擎 最新活动