基于各种奇葩的原因,DDMS里的dump View Hierarchy for UI automator工具总是报出各种错
大致原因主要是几大类:
1、java.lang.NullPointException
2、 java.lang.reflect.InvocationTargetException
我本人本地的SDK也更新到了8.0了,还是会报上述错误,各种网上的神操作都无解,最后选择另辟蹊径。
不用DDMS了,自己用命令来抓uix布局文件和截图,
然后用 XXX盘:\Android\sdk\tools\bin\uiautomatorviewer.bat这个工具来加载。
命令如下:
adb shell uiautomator dump /sdcard/app.uix
adb pull /sdcard/app.uix F:/app.uix
adb shell screencap -p /sdcard/app.png
adb pull /sdcard/app.png F:/app.png
抓出来的以后最好确认下nix文件和截图文件的大小是否正常,开始我想偷懒直接写个bat命令去抓,但是发现抓出来的文件都
只有10KB,肯定不对。无耐还是命令来抓。
然后打开用 XXX盘:\Android\sdk\tools\bin\uiautomatorviewer.bat这个工具
打开后的界面如下,点击打开文件按钮
然后选择刚才抓出来的uix和截图文件
点击OK就一切搞定。比起DDMS一切都自动搞是要麻烦点,无耐工具有时候各种报错蹩脚。
希望能帮助到有同样困惑的同行,理论上靠命令除了麻烦点,无视各种奇葩问题,只要能跑adb.