DiskLruCache分析

一、DiskLruCache简介

DiskLruCache(非google官方编写,但获取官方认可)是一套硬盘缓存方案。目前很多公司都使用该策略实现硬盘缓存。优点是代码量小(仅一个文件),方便集成和使用,另外通过journal方式管理图片,图片访问速度快。

二、DiskLruCache源码地址

https://github.com/JakeWharton/DiskLruCache/

三、DiskLruCache缓存位置

缓存位置通过open方法时可自行指定。一般缓存都是/sdcard/Android/data/包名/cache。

这个位置的好处

1、不占用手机内存

2、该路径是被android系统认定为项目缓存路径,卸载项目时,该数据会被清除

下面是缓存的图片信息,第一个是图片,第二个是journal文件。我们先看看journal文件里是什么

DiskLruCache分析_第1张图片

四、journal文件内容

源码中也对jorunal文件内容进行了说明,文件内容如下


DiskLruCache分析_第2张图片

1libcore.io.DiskLruCache :MAGIC,魔法字符,标记使用的缓存策略

2)1:DiskLruCache的版本号,恒为1

3)1:app的版本号,open的appversion

4)1:open的valueCount,通常为1

5):空行

6)CLEAN3400330d1dfc7f3f7f4b8d4d803dfcf6 832 21054

7)DIRTY335c4c6028171cfddfbaae1a9c313c52

8)CLEAN335c4c6028171cfddfbaae1a9c313c52 3934 2342

9)REMOVE335c4c6028171cfddfbaae1a9c313c52

12)READ335c4c6028171cfddfbaae1a9c313c52

13)READ3400330d1dfc7f3f7f4b8d4d803dfcf6

你可能感兴趣的:(DiskLruCache分析)