安卓图片大小优化及三级缓存

本文探讨了安卓平台上的图片大小优化方法,包括通过设置像素格式如RGB_565减少每个像素点的字节数,以及使用inSampleSize调整图片采样率来降低图片大小。同时,介绍了图片缓存的重要性,特别是使用堆内存缓存以避免频繁开辟新空间导致的OOM问题,并提及了三级缓存的概念,即优先从内存、本地再到网络加载图片。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

图片大小优化

图片大小=一个像素点大小 × 像素个数

那么大小优化有两个角度:
①减小像素点大小
②减少像素点个数

安卓自带参数:
a.inPreferredConfig:设置解码后像素格式
如:
①A(透明度)RGB(三原色)_8888
此模式下总共需要4*8=32位即4字节
②RGB_565:
此模式下需要5+6+5=16=2字节
所以将像素格式调整后可以优化大小。

b.inSampleSize:设置图片采样率进行缩放显示(需要值是2的幂次方)
如:传入参数为2,则加载图片宽高是1/2,大小也就是原图的1/4

图片缓存

图片缓存:加载第一张图片时,在堆内存开辟空间,当第一张不用、加载第二张时,若当前图片大小<=堆内存已有空间,复用之前空间即可
不用缓存:每次使用新图片都开辟新的堆空间,容易产生OOM

三级缓存:
当APP需要引用缓存时,依次从内存缓存、本地缓存、网络异步读取,成功后再一步步向上反馈。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

魔幻音

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值