嗨,我正在使用Glide加载图像,并在以下许多帖子后,我试图实现Glide缓存使用 RequestOptions().diskCacheStrategy(DiskCacheStrategy.ALL).centerCrop()
Glide.with(mContext)
.load(imageUrl)
.transition(ImageUtil.crossFadeTransition())
.apply(ImageUtil.requestOptionsForSlider())
.listener(glideRequestListner)
.into(imageView)
我的知识是,如果我使用 diskCacheStrategy(DiskCacheStrategy.ALL)
那么上述 Glide
图片加载代码如果有的话会自动使用缓存,如果没有的话会自动下载,是吗?
但我看到每次调用这段代码时,(查看我的网速表)它总是从给定的url中获取下载(尽管我可以看到应用程序的内存大小在增加)。
我甚至还试过这段代码
val future: FutureTarget<File> = Glide.with(mContext)
.load(imageUrl)
.downloadOnly(500, 500)
似乎没什么用
我应该怎么做,才能 Glide
如果有的话就使用缓存,我对缓存实现的概念有什么问题?任何帮助都是非常感激的
你确定它又在下载了吗? 你有没有试过在加载图片之前关闭互联网? 否则,你的图片URL是否总是相同的?(因为Glide使用它作为一个缓存键).你可以在下面的调用中使用它来检查图片是否在缓存中。
Glide.with(fragment)
.load(url)
.onlyRetrieveFromCache(true)
.into(imageView);