【Android】android 常见性能优化笔记

1.布局优化

思想就是减少布局嵌套,如果一个简单的布局即能用线性布局,也能用相对布局,建议线性布局,因为相对布局功能多,布局时间相对长;如果 布局相对复杂使用线性布局需要嵌套才能处理,建议相对布局,更多利用相对布局特性,减少嵌套层次。

布局引用,include标签,代码可以重复使用;merge标签,配合include使用,相当于减少了一层布局;viewStub标签,按需加载

2.绘制优化

降低onDraw()方法复杂度,这个说起来容易,个人感觉挺复杂的,需要练习

3.内存泄露优化

静态变量导致,比如静态的context引用activity

Handler使用不当,比如看到handlerLeak这个提示,你就要思考 如何处理了

4.响应速度优化

核心是避免在主线程做耗时工作,当一个进程发生ANR异常,系统会在data/anr目录下创建一个traces.txt文件,我个人倾向于在调试阶段将bug记录写到本地 然后分析,当然也有去做线上统计分析的,线上统计重点是bug去除重复

5.listView优化

最复杂的莫过于这类啦,这个需要考虑服务器端数据返回所需时间是不是比想象时间长,服务器端可以考虑reduce处理,客户端需要考虑需要哪些字段,viewHolder优化,图片的处理,分页的处理

6.线程优化

线程池的使用,线程的及时销毁

7.数据库的优化

这个很少有人提,但是我经常看到很多数据库的写法不是很好,事务处理是个好办法,索引也会加快查找速度

8.网络优化

这个是针对2G 3G wifi情况下如果去做优化处理,我的想法是参考网页端,如果网络不好,图片不予显示,可以在请求上面在加个参数,通过这个参数,服务器端就可以判断当前网络状态,并返回相应的数据

9.MobileAPI优化

这个主要针对服务端啦,增量更新是个好办法,客户端也需要做下特殊处理







你可能感兴趣的:(Android)