当前位置: 代码迷 >> Android >> 使用ImageLoader缓存网络图片有关问题
  详细解决方案

使用ImageLoader缓存网络图片有关问题

热度:91   发布时间:2016-04-28 01:55:49.0
使用ImageLoader缓存网络图片问题
我用imgloader读取网络图片后,缓存图片到sd卡中,但是缓存的图片文件全都没有后缀名,请问这是怎么回事啊?


Application中的配置,
部分代码
 //缓存在sd卡中指定目录
          File  cacheDir = new File(SdCardPath+"/eyunda/img");
ImageLoaderConfiguration imageLoaderConfiguration = new ImageLoaderConfiguration.Builder(
this)
.memoryCacheExtraOptions(200, 200)//设置内存缓存的详细信息
// max width, max height,即保存的每个缓存文件的最大长宽
.discCacheFileNameGenerator(new Md5FileNameGenerator())

// .discCacheExtraOptions(48, 48, null, 0, null)//设置sd卡缓存的详细信息  
.threadPoolSize(3)
// 线程池内加载的数量
.threadPriority(Thread.NORM_PRIORITY - 2)
 .discCache(new UnlimitedDiscCache(cacheDir))//自定义缓存路径,图片缓存到sd卡
.tasksProcessingOrder(QueueProcessingType.FIFO)
.memoryCache(new LruMemoryCache(4 * 1024 * 1024))
.memoryCacheSizePercentage(10)
.imageDownloader(
new BaseImageDownloader(this, 5 * 1000, 30 * 1000))
// 超时时间 5秒
.imageDecoder(new BaseImageDecoder(true))
.defaultDisplayImageOptions(
DisplayImageOptions.createSimple()) // default
.writeDebugLogs()  
.build();// 开始构建
}
------解决思路----------------------
有后缀和无后缀没影响吧!
------解决思路----------------------
本来就是应该不带后缀的,不然系统自动的图片查看器读取图片的时候,你的缓存图片会全部显示出来,在项目中一般也是去除后缀
------解决思路----------------------
这个和项目中引用资料一样,每个资源都有对应的id。
缓存在sd卡中的图片,它是以content://这样的形式保存,而不是path的形式[file://],在读取时能更快定位和加载。
  相关解决方案