Android 如何查看界面层数和界面所属组件信息

需求

开发中我们要学习别人的代码的时候,经常是找到对应界面
1. 根据界面字符串进行找对应代码位置
2. 利用Elipse或者Android studio的DDMS进行界面查看定位代码位置

嘻嘻,这里我介绍下我自己的方法,因为刚刚同事来问了

dumpsys SurfaceFlinger

建议将下面命令保存为.bat文件运行
echo on

adb shell dumpsys SurfaceFlinger > SurfaceFlinger.txt

例子

淘宝主页

找出淘宝主页对应的组件信息

Android 如何查看界面层数和界面所属组件信息_第1张图片

发送指令

adb shell dumpsys SurfaceFlinger > SurfaceFlinger.txt

具体位置

  1. 打开 SurfaceFlinger.txt
  2. 搜索“Hardware Composer state”
  3. 见如下表格

Android 如何查看界面层数和界面所属组件信息_第2张图片

    type   |  handle  | hint | flag | tr | blnd |   format    |     source crop (l,t,r,b)      |          frame         | name 
-----------+----------+------+------+----+------+-------------+--------------------------------+------------------------+------
       HWC | 72eb866240 | 0002 | 0000 | 00 | 0100 | RGBA_8888   |    0.0,    0.0,  720.0, 1280.0 |    0,    0,  720, 1280 | com.taobao.taobao/com.taobao.tao.homepage.MainActivity3
       HWC | 72eb827dc0 | 0002 | 0000 | 00 | 0105 | RGBA_8888   |    0.0,    0.0,  720.0,   48.0 |    0,    0,  720,   48 | StatusBar
 FB TARGET | 72e8a16940 | 0000 | 0000 | 00 | 0105 | RGBA_8888   |    0.0,    0.0,  720.0, 1280.0 |    0,    0,  720, 1280 | HWC_FRAMEBUFFER_TARGET

组件信息

copy出来 com.taobao.taobao/com.taobao.tao.homepage.MainActivity3

哈哈哈,我认为挺方便的,如果还有更好的方法,欢迎交流共享

你可能感兴趣的:(开发工具)