Android性能优化之总括篇

Paste_Image.png

本文先总括Android性能优化的主要几个方面,后续再逐条详细说明。

1.启动页面优化:

  • 启动页面网络请求优化(可以根据启动页面所需,有针对的优化网络请求)
  • 启动页面特效优化(添加启动动画,在视觉效果上造成“启动页面加载速度很快”的效果)
  • 启动页面无黑屏(配合Android Theme使用)
  • Application启动速度优化(尽量不将一些业务逻辑放于Application中)
  • 启动页返回键的屏蔽

2.布局优化:

  • 减少布局文件的层级(测量、布局、绘制的时间减少):可以使用RelativeLayout来减少嵌套,从而达到减少层级的目的,另外在相同层级的情况下使用LinearLayout(相比RelativeLayout更高效)

  • 使用include标签复用,merge标签降低层级,ViewStub来实现懒加载,另外Space用来可以占位。

3.绘制优化

  • 减少太多重叠的背景
  • 减少太多层叠的View
  • 减少复杂的Layout层级
    注:设置->其它高级设置->开发者选项->调试CPU过度绘制,可以查看过度绘制

4.内存泄漏优化:

参考之前文章:http://www.jianshu.com/p/2511077ba946

5.优化工具介绍:

Paste_Image.png

6.反射优化:

  • 在代码中减少反射调用;
  • 对频繁调用的返回值进行Cache;

7.稳定性优化:

  • 连续48小时monkey不应出现闪退,anr问题。
  • 如果应用接入了数据埋点的sdk,比如百度统计sdk等,这些sdk都会将应用的崩溃信息上报回来,开发者应每天关注这些统计到的崩溃日志,严格控制应用的崩溃率;

8.耗电优化:

  • 应用进入后台后不应异常消耗电量;
  • 操作应用后,退出应用,让应用处于后台,一段时间后通过adb shell dumpsys batterystats查看电量消耗日志看是否存在异常。

9.其他优化: