为了账号安全,请及时绑定邮箱和手机立即绑定

APP内存优化

标签:
Android

1、数据结构优化

频繁拼接字符串用StringBuilder(线程不安全,可变,比String高效,String不可变,每次赋值都是重新创建一个,StringBuffer线程安全,高效),用"+"的方式进行字符串拼接,会产生中间无用的内存块,频繁拼接就会消耗大量内存。

ArrayMap、SparseArray替换HashMap

内存抖动问题

再小的Class至少也要耗费0.5KB的内存

HashMap每一个Entry实体都需要额外占用32B的内存
2、对象复用(为了内存耗用小一点)

复用系统自带的资源

ListView/GridView/RecycalView适配器的ConvertView复用

避免在 onDraw()方法里面执行对象的创建(原因是:onDraw的图像界面,或者view,一有变动,就会重新的调用onDraw()方法,如果这个时候在里面创建对象的话,就会影响绘制时间,如果执行对象创建比较久,那会导致UI卡顿 ,运行就不流畅,而且onDraw()方法是频繁执行的,所以对象的创建也会频繁,效率就会比较低,一般来说把对象创建放在外面)

3、避免内存泄漏

内存泄漏会导致剩余的Heap越来越少,频繁触发GC回收垃圾

Activity是很容易泄漏的

用Application Context而不是Activity Context,Application是全局有效且一直存在着的,Activity是经常进入退出的,很容易造成内存泄漏问题

注意Cursor对象是否及时关闭,BitMap是否资源回收

点击查看更多内容
3人点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
移动开发工程师
手记
粉丝
14
获赞与收藏
101

关注作者,订阅最新文章

阅读免费教程

感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消