更多关于Android渲染性能请点击这里
Overdraw
在一帧内某个像素在屏幕上重新绘制了很多次
如何发现Overdraw
在开发者模式中打开 显示GPU重复绘制
Android设备通过给像素着不同的颜色来在屏幕上显示重复绘制的总量
如果只将一个像素渲染一次,将显示本色。
Nx的重复绘制显示蓝色 标识像素被重复渲染了N次
Overdraw常见的原因
Overdraw根据你视图叠加的方式产生
- 大量层级堆叠布局
- 大量不需要的重复背景
- 执行后台任务导致布局重绘
- 文本框标题的背景
- 头像和头像的背景
比如我们堆叠放置卡片,上方的卡片对用户可见,他将大部分底部卡片遮盖住了,这意味着我们需要花费时间来绘制这些卡片,而这些卡片大部分是不可见的。
我们每次渲染那些最后不会显示的像素时,都是在浪费GPU的性能
现代布局很容易不停地堆叠并分层防止图像来获取美观的界面 也会造成 overdraw
只要简单的移除不必要的背景
就能让app从红色变成平和的蓝色
本文深入探讨了Android应用中的Overdraw问题,解释了其产生的原因,如层级堆叠布局、重复背景及不必要的布局重绘。文章提供了实用的解决方案,如开启GPU重复绘制检查,简化布局和移除多余背景,从而提升应用渲染性能。
713

被折叠的 条评论
为什么被折叠?



