Android Performance Patterns S01E01 - Rendering performance

S01E01 Rendering performance 101 渲染性能问题

渲染性能问题是app开发的最常见问题。

系统每隔大约16ms(1/60秒)尝试绘制Activity,如果无法每隔16ms成功绘制出新的图,则会出现掉帧的现象。也就是说,APP每16ms要运行结束所有刷新屏幕的逻辑,屏幕才能达到每秒60帧。

如下图:

 

用户很容易察觉掉帧引起的卡顿问题,如拖动列表卡顿、输入法输入卡顿。引起卡顿的原因可能有多种,如:

  • View结构的较大部分的重新绘制花费过多时间(CPU周期,CPU cycles)。
  • 太多的组件互相覆盖,在用户不可见的范围浪费了过多时间。
  • 过多的动画,导致CPU和GPU组件的过度使用。

检查和修复这些性能问题,与APP如何构建的有关。不过有些通用的辅助工具以定位这些性能问题:

Hierarchy Viewer:可检测Activity是否过于复杂等。

On-Device Tools:Profile GPU Rendering, Show GPU Overdraw, GPU View Update等。

Traceview:隐藏在CPU代码中的bug

转载于:https://www.cnblogs.com/codeRhythm/p/4740962.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值