手机自带的开发者选项中,有很多可以使用的工具,他们可以用来分析自己的应用的性能、绘制、anr等情况。下面主要说下PU渲染模式分析的简单讲解:

GPU渲染模式分析

android stdio 渲染 安卓渲染模式是什么_新视图


打开 在屏幕上显示为条形条图 模式 该模式打开后,能以一种可视化的方式,呈现出U渲染框架的速度和节奏。

打开后以支付宝的首页为例子:如图

android stdio 渲染 安卓渲染模式是什么_渲染器_02


如上图:

  • 水平轴代表的是运行经过的时间、垂直轴代表每一帧所花费的时间,以毫秒为单位
  • 每一根方格竖条代表着一个渲染帧。竖条越高,表示渲染所花费的时间越长
  • 绿色的横线,表示为16毫秒。(android应用程序让用户不感觉到肉眼视觉上的卡顿,需要让其程序在其整个生命周期中,始终保持60FPS的帧速率,即为屏幕需要在1秒内刷新60次,每16.666667毫秒内刷新一次,才不会感觉到卡顿)当竖条超过该绿线,就可能让用户感觉到卡顿。
  • 竖条中蓝色 代表创建和更新视图所消耗的时间。如果蓝色比较长,可能意味着在onDraw()方法中耗时太长,往往是自定义控件问题。
  • 红色 表示 Android 的 2D 渲染器向 OpenGL 发起绘制和重新绘制显示列表的命令所花的时间。 此竖条的高度与它执行每个显示列表所花的时间的总和成正比—显示列表越多,红色条就越高。
  • 橙色 表示 CPU 等待 GPU 完成其工作的时间。 如果此竖条升高,则表示应用在 GPU 上执行太多工作。
  • 深绿色 表示应用执行两个连续帧之间的操作所花的时间。 它可能表示界面线程中进行的处理太多,而这些处理任务本可以分流到其他线程。
  • 浅蓝色 表示将位图信息上传到 GPU 所花的时间。 大区段表示应用花费大量的时间加载大量图形。