传送门 ☞ 轮子的专栏 ☞ 转载请注明 ☞ http://blog.csdn.net/leverage_1229
有关Android应用性能优化的议题,在互联网上可以说是众说纷纭,没有一个统一的标准和规范可循。本文主要是结合作者的实际项目情况以及项目前期的知识储备,对这一议题加以总结和概括,本文不会涉及太多代码的细节。仅以解决方案抛砖引玉,欢迎大家指正和补充。
1优化日程篇
(1)通过分析代码细化优化点;(2)优化启动加载项;
(3)数据库处理方式优化;
(4)优化常用操作的性能;
(5)内存占用优化以及性能提升交付。
2优化代码篇
(1)避免创建不必要的对象;(2)如果方法用不到成员变量,可以把方法声明为static,性能提高15%-20%;
(3)避免使用getters/setters存取Field,可以把Field声明为public直接访问,性能提高三倍;
(4)static变量如果不需要修改,应使用final修饰符定义为常量;
(5)使用增强For语句,性能提高三倍;
(6)私有内部类要访问外部类的Field或方法,可以把外部类的Field或方法声明为包访问权限;
(7)合理利用浮点数,比整型慢两倍。
3优化常用控件篇
Google的SDK提供的API当中的控件在实际项目中也是需要优化的,因为SDK提供给我们的是通用版本,为了保证兼容的最大化,很多控件的执行性能是可以进行提升的,这里以最常见的ListView控件为例,涉及它的优化方案可以从如下几个方面去考虑:(1)构建ViewHolder类;
(2)启用convertView缓存;
(3)分批加载数据;
(4)延迟(异步)加载数据;
(5)构建LRUCache。