Android自定义图片加载三级缓存

本文介绍了Android中自定义图片加载的三级缓存机制,旨在帮助初学者理解原理。作者指出,尽管存在如Picasso和Glide等成熟库,但自定义实现有助于快速掌握核心概念。文章详细阐述了缓存的重要性,特别是对于节省用户流量的作用,并提供了具体的代码实现。
摘要由CSDN通过智能技术生成

最近刚完成一个仿微信项目,刚闲下来,写篇文章,方便大家理解Android的图片加载模式。

有人会问:为什么要自定义,三方库不是很完善吗?

我说:是的,现在有Picasso,Glide等很多优秀的封装,可以完成。

但重点是:

1、通过自定义了解原理和本质才是最主要的。

2、三方库少则十多个类,多则几十个甚至上百个类,方法更是不计其数,要是完全掌握恐怕至少也要一个月时间,这样对我们的学习效率影响很大,试想我们是在最有限的时间掌握原理好呢,还是一个劲的钻进无限的回调,参数拼接... ..好呢。

3、也是上班原因,由于本人所在单位对外部访问严格的审核,所以开发中的很多技术点,很多都是自己封装完成,在自己编写的过程中不断完善和探索,以达到能公用的目标为己任。

好了,闲话不啰嗦,我们切入正题。

一、原理:图片加载的缓存机制,相信大家都知道,但还是唠叨几句,希望对初学的人也有个认知。

因为APP端用户是流量有限的,所以能最大限度的减下用户流量的消耗,是用户很看重的一点,所以要把一些图片呀,音频视频,集合呀等一些过大的数据,缓存起来,等到用户再次登录,就可以从本地获取,极大节约了资源。

三级缓存:

好了,以目了然,现在就开始具体的代码实现了

二:代码

ImageLoader.java(图片加载类)

ImageLoadListener.java(图片加载完成回调接口)

/**
 * Created by jambestwick on 2018/1/10.
 * <p>
 * 三级缓存
 */

public class ImageLoader {

    private static final String TAG = "ImageLoader";

    // LRUCahce 池子
    private static LruCache<String, Bitm
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值