项目经验分享-----有效避免OOM(Out of Memory)问题的解决方案

根据我之前项目的经验,可以考虑以下几种方法:
1. 将viewgroup中的child view 移除。  viewgroup.remove(...); 
2. 每个应用的内存空间都是由android分配固定大小的内存,可以考虑将应用内存的1/4赋予LRUCache(android中的API)。 softreference 不建议使用。 
当内存达到指定上限时,LRUCache有相应算法踢出缓存项。
3. 可以考虑将图片调整(压缩等)为控件(ImageView)适合的大小。
 
光大项目打算同时采用这三种方法, 当时由于时间原因只应用了 第一种方法。 其余两种方法可以考虑附加上。
第一种方法: 个人感觉是一定要加的,根据之前的经验的话,项目上内存泄露是最大的问题,view是重量级的,view context的泄露比较严重,第一种方法可以一定程度上解决。
解决OOM是一个头疼问题,考虑的问题比较多,比如设备的分辨率(高分辨率显示图片需要更大的内存),图片的大小等等。
 
这是我的建议,大家有其他好的建议可以一起讨论。
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值