android图片加载内存,imageloader - android 大量图片加载导致的内存问题

ringa_lee2017-04-17 15:50:427楼

先不谈工具理想不理想,要降低内存使用如何做?

通常的方式是通过Options.inSampleSize来进行抽样,会造成图片质量下降,但是有效.

universal-imageloader提供的config里虽然有相关的配置,但是看过源代码就会发现,默认的几种配置在图片小于屏幕分辨率的时候并不会缩小.因此如果你有一个分辨率较高的手机,那么大部分情况下universal-imageloader会以inSampleSize=1来进行处理,也就是不做抽样.

所以我的处理方法是在他的源码基础上进行修改,增加几个抽样的维度,即使图片已经小于当前屏幕的分辨率,仍然可以控制他进行抽样.对比原有的配置,这样做内存使用成本减少(抽样大小+1内存使用应该是减少75%)理论上图片效果会差一些,但实际上手机分辨率虽然一直在提高但是尺寸无非4-6寸之间,对于缩略图来说,这点损失肉眼根本判断不出来,高质量图片在大图中展示即可.

另外对于imageloader,.bitmapConfig(Bitmap.Config.RGB_565)也可以减少内存使用,官方文档里有说明.

另外你说反复进出activity会有这个问题,你可以尝试手动回收一下图片.这块结合这几个框架我没试过,自己试试吧.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值