Android优化的全面总结
2018-02-26 本文已影响927人
奔跑吧李博
性能对于App来说就像汽车的发动机一样,对产品质量起着决定性作用。一下是开发Android过程中对性能优化的总结:
-
少用static,生命周期太长
-
根据当前分辨率压缩bitmap,bitmap用完recycle,使用LRU cache缓存bitmap
-
注意context的使用,尽量用application代替activity的context
-
记住不用要资源关闭(BraodcastReceiver,ContentObserver,File,Cursor,Stream,Bitmap)
-
耗时操作、算法开启线程。
-
系统不足时主动释放资源
-
leaknanery泄露工具,检测内存泄露
-
不创建多的string对象而使用Stringbuffer
-
复杂算法尽量用C完成
-
减少不必要的全局变量
-
尽量避免static成员变量引用资源耗费过多的实例,比如Context。
-
Android提供了很健全的消息传递机制(Intent)和任务模型(Handler),可以通过传递或事件的方式,防止一些不必要的全局变量。
-
可使用Java四种强软弱虚引用方式减少内存消耗
-
避免使用枚举,会牺牲速度,尽量用常量代替
-
避免滥用Bitmap导致的内存浪费
-
时刻谨记避免创建不必要的对象,特别尽量少地在循环中创建对象。
-
尽量减少布局层级
-
加载大图片记得要裁图,减小图片尺寸,节省流量
-
内存是在不够的,可申请大内存 ,在<application>标签中,把largeHeap设置为true,提高最大内存上限