UI过度绘制
过度绘制是指屏幕上的某个像素点在同一帧的时间内绘制了多次。
1.调试GPU过度绘制选项
检测过度绘制可以借助开发者选项里自带的调试GPU过度绘制选项。
1.原色 – 没有被过度绘制 – 绘制了一次。
2.蓝色 – 1次过度绘制 – 绘制了两次。
3.绿色 – 2次过度绘制 – 绘制了三次。
4.粉色 – 3次过度绘制 – 绘制了四次。
5.红色 – 4次过度绘制 – 绘制了五次。
原则上大片的蓝色还是可以接受的,中等大小的绿色区域是可以接受的但你应该尝试优化、减少它们,小范围粉色可以接受,而红色则是错误的,应该修复它们。
2.Tracer for OpenGL ES
另一个检测工具是Tracer for OpenGL ES,Tracer for OpenGL ES(http://developer.android.com/tools/help/gltracer.html)是Android SDK中新增加的开发工具,可逐帧(准确得说是逐函数)记录app用OpenGL ES的绘制过程。它提供了每个OpenGL函数调用的消耗时间,所以很多时候用来作performance分析。
在DDMS里通过Tracer for OpenGL ES生成一份gltrace文件,打开该文件后,点到glDrawArr