前言:现在移动设备硬件性能越来越高,项目周期压缩,导致很多开发者在开发过程中对系统 对性能优化有了疏忽,在此本人出于自我学习和分享大家的心态将会更新一系列针对Android性能优化的文章。首先,我们一起看下Android系统对UI上的性能优化有哪些。
技术背景:谈到UI性能优化,其实无非就是用户感觉偶尔、某些页面卡顿,那么为何出现这种卡顿,除去基本的内存使用不当外,我个人认为有两点:(1)布局层次太多(2)自定义View onDraw耗时太长。针对以上问题,Android本身提供了我们一个很方便的工具。(小知识点:Android单16ms会触发一次VSYNC,对View进行绘制,如果超出了这个时间就会出现卡顿,至于为何是这个时间,大概好像是按照人的裸眼与大脑交互视差来定的吧,感兴趣的同学可以具体看下。)
问题一:布局层次太多
方案:Hierarchy Viewer。检查我们的布局效率,减少不必要的层次。
问题二:绘制耗时太长
方案:Show GPU Overrdraw。具体打开步骤:在手机或者模拟器设置 -> 开发者选项 -> 调试GPU过度绘制 -> 显示GPU过度绘制。
打开后会发现很多颜色色块,来一张参考图:
如果你遇到了颜色深的色块比较多的情况,你就要注意优化了。
下面为示例:
以上为如何发现问题点,关键在于怎么去优化呢,未完待续。。。。。