毕加索缓存清晰

时间:2016-04-18 12:08:29

标签: android caching picasso clear-cache

我已经看到了这里提出的所有解决方案,但没有什么对我有用。

如何在我的应用程序中清除Picasso的缓存?

我试图使用无效 - 不起作用。 我看到了一些关于Picasso.cache.clear的内容,但无法直接访问缓存。

(请不要建议我使用NO_CACHE)

感谢。

2 个答案:

答案 0 :(得分:2)

get from this answer

将此类添加到com.squareup.picasso包中。

package com.squareup.picasso;

public class PicassoTools {

    public static void clearCache (Picasso p) {
        p.cache.clear();
    }
}

因为缓存具有包可见性,所以此util类可以为您清除缓存。你只需要打电话:

PicassoTools.clearCache(Picasso.with(context));

只需将此文件添加到路径... / java / com / squareup / picasso

即可

P.S。我强烈建议使用glide而不是picasso,它具有更强大的功能来缓存控制和非常棒的下载回调以捕获下载错误,例如

答案 1 :(得分:0)

更新您的毕加索图书馆:

compile 'com.squareup.picasso:picasso:2.5.2'

由于Picasso.invalidate()仅适用于gradle版本2.5.0及更高版本。

并清除缓存使用功能:

Picasso.with(context).invalidate(file);