[原] Android性能优化方法

本文介绍如何通过GPU过度绘制分析、布局优化、减少层级结构等手段提升Android应用性能,并利用多种工具进行性能监控与调试。

GPU过度绘制

  • 打开开发者选型,“调试GPU过度绘制”,蓝、绿、粉红、红,过度绘制依次加深
  • 粉红色尽量优化,界面尽量保持蓝绿颜色
  • 红色肯定是有问题的,不能忍受

使用HierarchyView分析布局层级

  • 删除多个全屏背景:应用中不可见的背景,将其删除掉
  • 优化ImageView:对于先绘制了一个背景,然后在其上绘制了图片的,9-patch格式的背景图中间拉伸部分设置为透明的,Android 2D渲染引擎会优化9-patch图中的透明像素。这个简单的修改可以消除头像上的过度绘制。
  • 缩短View层级结构
    • 删除非必须View,不仅仅能提高帧率还能降低对内存的消耗、同时还能加速应用的启动
    • TextView组合图标,代替LinearLayout+TextView+ImageView
    • 使用mearge标签
    • 使用RelativeLayout扁平化布局
    • 特别是ListView item布局,一定要扁平化

不要吝啬发现Android Device Monitor的功能

  • Start Method Profiling
    • 可以观察每个线程的方法调用情况,
    • 可以通过观察,方法的调用次数、每次方法执行时间
    • 找到有是否死循环,是否为耗时操作

使用LeakCanary发现内存溢出

  • 在开发阶段一定要集成LeakCanary,而且非常容易集成
  • 及时发现Activity页面内存溢出地方法
  • 详细的内存溢出方法跟踪,便于定位异常点

使用lint工具给APK包减肥

使用OneAPM监控App性能

使用SVG代替图片

  • 需要和设计配合

使用xml代替图片

代码规范制定并遵守

  • 一致的代码风格,有利于代码维护、查看和发现问题所在

转载于:https://www.cnblogs.com/purediy/p/5036771.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值