如何永久缓存加载的数据(图片)?

问题描述:

我的应用程序通过API从服务器加载并显示顶级电影的缩略图。我不想每次都查询服务器并重新加载它,我使用glide来显示来自服务器url的图像。如何永久缓存加载的数据(图片)?

如何实现此图像缓存,以便应用程序使用以前加载的数据,即使其离线。

是否有任何库或我必须存储图像使用sqlite并检索它?

谢谢

+0

你看过https://futurestud.io/tutorials/glide-caching-basics或https://github.com/bumptech/glide/wiki/Caching-and-Cache-Invalidation吗? – MatPag

如果使用滑翔加载图像,有一个非常简单的一行来缓存所有图像。

简单地将'.diskCacheStrategy(DiskCacheStrategy.SOURCE)'添加到您的Glide加载中,并且它会缓存图像并在即使离线时也使用它。

因此,它可能看起来像这样:

Glide.with(context) 
     .load(imageUrl) 
     .diskCacheStrategy(DiskCacheStrategy.SOURCE) 
     .into(target); 

你应该看看介绍下滑,在其官方GitHub库。它提到了很多关于它如何工作的细节。