1

在我的应用程序中使用 Glide 时遇到问题。据我了解,如果图像被下载一次并且我从其他活动的缓存中请求图像,则 Glide 必须快速显示图像。我得到了这种行为,但不是在我的应用程序中。图片加载速度非常慢(大约 3 秒),尽管在另一个应用程序中大约是 0.4 秒。我调用 Glide 的代码:

    Glide.with(this)
            .load(url)
            .signature(new StringSignature(url))
            .diskCacheStrategy(DiskCacheStrategy.ALL)
            .into(mHeader);

并且在其他活动代码中是相同的。你能帮帮我吗?谢谢

4

1 回答 1

1

您不需要该signature(url)部分,模型(url在您的情况下为 String )已经是缓存键的一部分。

问题可能是您的标题更改了大小。对于缓存命中,视图大小(= 生成的位图大小)需要保持不变。但是,由于您正在ALL缓存,因此负载应该仍然很快。url 中是否有任何变化,比如 sessionid 或类似的?那会使缓存丢失。

如果您正在加载的 url 是动画 GIFRESULT缓存可能是罪魁祸首,这里有一个参考

于 2015-10-01T10:44:44.247 回答