传统正向代理1.1问题本案例要求先快速搭建好一台Web服务器:建立Web测试文件/var/www/html/index.html然后创建代理服务器,使得192.168.4.0/24网段中的所有主机,均可以通过该代理服务器访问Web服务。设置代理服务端口为3128设置内存缓存容量128M设置硬盘缓存容量为200M,一级..
分类:
其他好文 时间:
2016-03-28 22:07:12
阅读次数:
417
DiskLruCache是谷歌推荐的用来实现硬盘缓存的类,本案例将对DiskLruCache的基本用法做一个总结,包括:创建缓存、查找使用缓存、移除缓存等等。实现效果图创建DiskLruCacheDiskLruCache使用open方法创建一个实例,如下所示:对应的四个参数分别为:缓存目录、应用版本号、单个key对应的数据的个数(一般设为1)、缓存的总大小,其中key是图片的url经过MD5转码获得...
分类:
系统相关 时间:
2016-03-10 16:08:49
阅读次数:
260
硬盘缓存方案DiskLruCache
前面研究了LruCache,它作为现在用的最多的内存缓存方案已经在很多开源缓存框架中使用,同样的还有硬盘缓存方案也就是DiskLruCache。
它的大致用法如下
存储:
DiskLruCache diskLruCache= open(File directory, int appVersion, int valueCount, long maxS...
分类:
系统相关 时间:
2016-02-19 10:46:50
阅读次数:
239
picasso是Square公司开源的一个Android图形缓存库 主要有以下一些特性: 在adapter中回收和取消当前的下载; 使用最少的内存完成复杂的图形转换操作; 自动的内存和硬盘缓存; 图形转换操作,如变换大小,旋转等,提供了接口来让用户可以自定义转换操作; 加载载网络或本地资源; Pic
分类:
其他好文 时间:
2016-02-18 06:31:21
阅读次数:
234
防止多图OOM的核心解决思路就是使用LruCache技术,但LruCache只是管理了内存中图片的存储与释放,如果图片从内存中被移除的话,那么又需要从网络上重新加载一次,这显然非常耗时。因此Google又提供了一套硬盘缓存的解决方案:DiskLruCache(非Google官方编写,但获得官方认证)...
分类:
系统相关 时间:
2015-12-20 23:52:17
阅读次数:
296
思路:1. 压缩图片 压缩本地图片:获得imageview想要显示的大小 ->设置合适的inSampleSize -> 压缩网络图片: a.硬盘缓存开启 ->直接下载存到sd卡,然后采用本地的压缩方案 b.硬盘缓存关闭 ->使用BitmapFactory.decodeStream(is...
分类:
移动开发 时间:
2015-11-13 18:26:25
阅读次数:
305
有兴趣的同学可以读完这篇文章以后 可以看看这个硬盘缓存和volley 或者是其他 图片缓存框架中使用的硬盘缓存有什么异同点。讲道理的话,其实硬盘缓存这个模块并不难写,难就难在 你要考虑到百分之0.1的那种情况,比如写文件的时候 手机突然没电了之类的,你得保证文件正确性,唯一性等等。今天就来看看这个D...
分类:
移动开发 时间:
2015-09-17 11:22:32
阅读次数:
286
前面http://www.cnblogs.com/androidsuperman/p/8a157b18ede85caa61ca5bc04bba43d0.html有讲到使用LRU来处理缓存的,但是只是处理内存里面的缓存,没进行文件缓存和处理,那么如何实现Volley在本地的缓存呢一般硬盘缓存使用com...
分类:
系统相关 时间:
2015-09-11 10:34:52
阅读次数:
318
在上一篇中讲完了Volley框架怎么使用,那么这篇就来讲讲Volley框架的缓存机制我们看Volley内部源码发现:
Volley框架内部自己处理了DiskBasedCache硬盘缓存,但是没有处理LruCache内存缓存,因为一般在处理图片的问题上才更多的用到LruCache缓存,但是它提供了一个ImageCache接口供我们自己实现,该接口默认需要实现两个方法:getBitmap(Strin...
分类:
其他好文 时间:
2015-08-14 19:08:14
阅读次数:
166
上次讲了使用内存缓存LruCache去加载很多图片而不造成OOM,而这种缓存的特点是在应用程序运行时管理内存中的资源(图片)的存储和释放,如果LruCache中有一张图片被释放了,再次加载该图片时需要重新从网络上下载下来,这就显得废流量不说,而且费时,网络不好的状况下用户需要等待,而且在没有网络的情况下不会显示任何数据。
那么怎样才能解决这种情况呢?答案就是加入硬盘缓存DiskLruCache。...
分类:
系统相关 时间:
2015-07-23 17:54:46
阅读次数:
190