Android-overdraw渲染性能优化

你将学到

1.overdraw简介
2.overdraw检查方法
3.overdraw常用解决方法

overdraw简介

UI界面被多次不必要的重绘,就叫overdraw。这是对GPU的浪费,在低端手机还有可能造成界面卡顿。

如何检查是否发生了overdraw

  • 在您的设备上,转到 Settings(设置) 并点按 Developer Options(开发者选项)。
  • 向下滚动到 Hardware accelerated rendering 部分,并选择 Debug GPU Overdraw。
  • 在 Debug GPU overdraw 对话框中,选择 Show overdraw areas(展示overdraw区域)。

然后查看你的UI页面是否有下面的颜色块,不同颜色代表不同的绘制次数:

例如这个页面:

某个应用正常时的样子(左侧),以及它在 GPU 过度绘制后的样子(右侧)

可以看到文字和图片部分都显示了红色,应该尽可能的将其变成真彩色或仅有 1 次过度绘制(蓝色)的视觉效果,如下:
大量过度绘制的应用(左侧)以及很少过度绘制的应用(右侧)的示例

overdraw 解决方法

  • 移除不必要的background,这是一种快速提升渲染性能的方式
  • 减少布局层级
  • 减少使用透明视图

工具,使用 [Layout Inspector布局检查器详解] (http://tryenough.com/android_ui04),查看布局层级

发表评论

关闭菜单