DiskLruCache 初探

缓存—— 给我们带来了 良好的用户体验,急速的加载内容。
DiskLruCahce 这个磁盘缓存框架大家应该都不陌生,今天了解一下他的用法和大概的实现。

github 地址 :https://github.com/JakeWharton/DiskLruCache
Gradle 依赖 compile 'com.jakewharton:disklrucache:2.0.2'

DiskLruCache 初始化

初始化的过程 设置缓存路径以及缓存尺寸,路径建议是设在 系统的 data 文件夹中,无论是 internalStorage 还是 externalStorage 都会在 app 被卸载的时候被系统清除,当然也可以放在自定义的 sd 卡中。

(这里我犯了一个错,造成我的图片无法进行缓存,下载成功,其他无报错,后来发现是我的缓存大小设置的小于要缓存的图片了…… 很尴尬)

DiskLruCache 调用

由上图我们看到 使用的流程为
1、创建 editor 对象
2、获取缓存对象的输出流 newOutputStream
3、执行缓存 commit/取消缓存abort

加载缓存

1、获取一个 snapShot 对象
2、获取输入流
3、生成 bitmap

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 框架:提供一定能力的小段程序 http://www.cnblogs.com/jincheng-yangchaofa...
    姑娘请别为难小僧阅读 12,120评论 0 132
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 136,013评论 19 139
  • 一.榜单介绍 排行榜包括四大类: 单一框架:仅提供路由、网络层、UI层、通信层或其他单一功能的框架 混合开发框架:...
    伟子男阅读 10,635评论 0 161
  • 附上原文作者连接:作者:金诚 一.榜单介绍 排行榜包括四大类: 单一框架:仅提供路由、网络层、UI层、通信层或其他...
    这个美嘉不姓陈阅读 6,718评论 1 35
  • 【微公益】【691】【每日经典,伴您早起】【20170316孟子165】 曹交问曰:“人皆可以为尧舜,有诸?”孟子...
    北冥_鲲阅读 1,567评论 0 2

友情链接更多精彩内容