android - 线圈图像缓存

标签 android image-caching coil

我使用 Coil 库将图像加载到 Android 应用程序中。如果没有互联网,它会立即向我显示缓存的图像。但是当有互联网连接时,Coil 会再次加载图像,有一段时间我看到了占位符。我认为这是一个非常奇怪的逻辑。即使有互联网连接,我怎样才能让它立即向我显示缓存的图像?

我当前的代码:

fun ImageView.setPhoto(photoLink: String) {
    load(photoLink) {
        crossfade(true)
        placeholder(R.drawable.placeholder)
        error(R.drawable.placeholder)
        size(ViewSizeResolver(this@setPhoto))
    }
}

最佳答案

尝试禁用缓存 header 支持。

val imageLoader = ImageLoader.Builder(context)
        .respectCacheHeaders(false)
        .build()
Coil.setImageLoader(imageLoader)

关于android - 线圈图像缓存,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/71141940/

相关文章:

android - RangeError(索引): Invalid value: Not in range 0. .5,包括:6:Flutter SliverChildBuilderDelegate

ios - Alamofireimage 如何将图像保存到磁盘缓存?

android - 如何在 Jetpack Compose 的新线圈版本中使用 `ImageRequest.Builder.target`?

Android:在jetpack中使用线圈的图像的缓存有效性

android - 线圈不使用 Jetpack Compose 在模拟器中加载图像

Android - 标准布局文件夹,哪个屏幕尺寸?

android - 菜单项Android中图标后的换行

java - 将 JSON 字符串转换为 Spinner 的 Arraylist

android - picasso 缓存返回转换后的图像而不是原始图像

ios - 不同的缓存类型 SDWebImage