依据过渡绘制的层度可以分成:
- 无过渡绘制(一个像素只被绘制了一次)
过渡绘制x1(一个像素被绘制了两次)
过渡绘制x2(一个像素被绘制了三次)
过渡绘制x3(一个像素被绘制了四次)
过渡绘制x4+(一个像素被绘制了五次以上)
Android大多数手机的屏幕刷新率是60hz,系统要求每一帧都要在1000/60=16.67ms内绘制完成。如果没有在16ms内完成这一帧的绘制,假如你花了24ms完成,那么就会出现丢帧的情况。丢帧是用户体验中一个非常核心的问题,丢帧越多,用户感受到的卡顿情况就越严重,体验越差。找出过度绘制的问题,对系统进行优化,提升用户体验,就是过度绘制测试的目的。
Android手机的开发者选项中有【调试GPU过度绘制】的选项(Android4.2及以上的版本具备此功能)
2、打开手机设置—系统—开发人员选项—调试GPU过度绘制
原色:没有过度绘制
绿色:过度绘制了2倍,像素绘制3次。
深红:过度绘制了4倍,像素绘制了5次或者更多。
三、过度绘制测试验收原则
2、3次过度绘制尽量避免,淡红色区域小范围可以接受,但要尽量避免。
下面几个图是大家经常用到的APP的商品详情页面和购物车页面,我们可以观察下过度绘制情况:图一与图四比较好,图二与图三都有优化的空间。
四、过渡绘制解决方案(总结)
2、既然过渡绘制值一个像素点被绘制多次,我们只要保证图片或者背景颜色不要叠加在一起即可。正确的方式应该是尽量减少带背景的View产生重叠区域。如果重叠,使用canvas的clipRect进行裁切。
关于Android性能优化——过渡绘制的解决方案,这边就简单总结以上三点,更详细的操作方法,下次的文章我们会给大家带来,请持续关注我!
请关注+私信回复:“测试”就可以免费拿到软件测试学习资料和面试题库,进群学习交流,快速让自己变强!

