概要
以下介绍的工具都在存在 <android-sdk>/tools/
目录下,以前没有发现,今天了解到了,学习一下。先粗略介绍几个容易上手的工具,此后再细细研究。
draw9patch
显而易见,这是一个画点9图的工具。
google doc draw9patch
YouTube 教程
无需多讲,看教程即可。
或者在AndroidStudio中选中该图片,右击,选择最下方的create9-patch file.
将出现一个文件选中框,点击确定即可创建该文件的点9图。
hierarchyviewer
不合理的布局会使我们的应用程序UI性能变慢,HierarchyViewer能够可视化的角度直观地获得UI布局设计结构和各种属性的信息,帮助我们优化布局设计。HierarchyViewer是我们优化程序的工具之一,它是Android自带的非常有用的工具,可以帮助我们更好地检视和设计用户界面(UI),绝对是UI检视的利器。
- 进入
<android-sdk>/tools/
目录中,点击hierarchyviewer,或者使用命令行打开。 - 由于hierarchyviewer识别不到真机,只能使用模拟器测试。
- 在设备下的列表中选择需要查看的页面
- 点击inspect Screenshot,load成功后可以看到整个页面View的层级,与uiautomatorviewer的功能十分相似,只是看不到每个页面的具体属性:
- 点击Load View Hierarchy,load成功后可得本页面上所有View的层级,点击具体的 view item,可获得该View的属性,包括(画View的时间,布局上的宽高),侧重于性能方面。
观察层次结构图,这个图有点大,可以拖动。View Hierarchy窗口显示了Activity的所有View对象,选中某个View还可以查看View的具体信息,最好选择工具中的Show Extras选项。
图片右下方的三个tab可以切换页面。
- 观察单个view,选择单个view后会出现如上图所示图形。这里会看到Measure、Layout、Draw的耗时。
View Hierarcy 同时能帮助你识别渲染性能比较低的部分。View节点中带有红色或黄色的点代表速度较慢的View对象。如单步运行应用程序那样,你可以这样来判断某个View 速度一直很慢,还是只在某个特定环境下速度才慢。
请注意,低性能并不表示一定有问题,特别像是ViewGroup对象,View的子节点越多,结构越复杂,性能越差。
View Hierarchy 窗口还可以帮助你找到性能问题。只要看每个View节点的性能指标(颜色点)就可以,你可以看到测量(布局或绘制)最慢的View对象是哪个,这样你就能快速确定,要优先察看哪个问题。
uiautomatorviewer
uiautomatorviewer 工具提供了一个方便的 GUI,可以扫描和分析 Android 设备上当前显示的 UI 组件。您可以使用此工具检查布局层次结构,并查看在设备前台显示的 UI 组件属性。利用此信息,您可以使用 UI Automator(例如,通过创建与特定可见属性匹配的 UI 选择器)创建控制更加精确的测试。
uiautomatorviewer 是UI Automator 测试框架功能的一部分。
该工具位于 <android-sdk>/tools/目录中。
使用步骤:
YouTube上谷歌录制的使用教程
- 进入
<android-sdk>/tools/
目录中,点击uiautomatorviewer,或者使用命令行打开,初始页面如下:
- 使用adb启动设备。
- 点击第三个按钮,进行有层级的屏幕捕捉。
此后,光标经过任意一item,右上方的view层级一栏中都会高亮显示该item。选中一个item,右下方的Node Detail这一栏将会显示改item的具体属性。通过这种方式,我们可以看到任何app的View层级。
注意:uiautomatorviewer支持的Android版本在4.1及其以上。