Android系统每隔16ms会发出VSYNC信号重绘我们的界面,由CPU和GPU两个部分协同完成的.
正常情况下:
丢帧情况下:
APP卡顿原因有下:
1、过度绘制
用来描述一个像素在屏幕上多少次被重绘在一帧上.
通俗的说: 理想情况下, 每屏每帧上, 每个像素点应该只被绘制一次, 如果有多次绘制, 就是Overdraw, 过度绘制了.
2、主线程运算过于复杂
UI线程的复杂运算会造成UI无响应, 当然更多的是造成UI响应停滞, 卡顿.
3、频繁gc
< 执行GC操作的时候,任何线程的任何操作都会需要暂停,等待GC操作完成之后,其他操作才能够继续运行, 故而如果程序频繁GC, 自然会导致界面卡顿. >
具体参考 blog http://www.jianshu.com/p/1fb065c806e6