Как очистить кеш Пикассо для определенного URL-адреса?

Я пытаюсь выяснить, как очистить кеш определенного URL-адреса или сделать так, чтобы Пикассо уведомлял об изменении изображения на стороне сервера. Может кто-то помочь мне с этим?


person reza    schedule 09.09.2014    source источник
comment
Почему вы пишете в стиле CamelCase? :)   -  person Víctor Albertos    schedule 10.09.2014
comment
ах, мне постоянно об этом говорят :)   -  person reza    schedule 10.09.2014
comment
Вы пробовали это? Picasso.with(ctx).load(новый файл(/path/to/image)).skipMemoryCache().into(imageView)   -  person Víctor Albertos    schedule 10.09.2014
comment
да, это пропускает кеш памяти только один раз, после обновления и повторной попытки без skipmemorycache снова загружается из кеша, но не заменяет его   -  person reza    schedule 10.09.2014
comment
comment
Спасибо за вашу милую Либ Джейк, это удивительно, как такой гений, как вы, потерял эту возможность ;) могу я спросить, сколько времени до этого?   -  person reza    schedule 10.09.2014
comment
Пожалуйста, прекратите использовать верблюжий чехол для своих сообщений, @reza. Стили письма, которые трудно читать, заставляют работать других людей. Поскольку вы признались, что вам говорили об этом раньше, я голосую против.   -  person halfer    schedule 13.09.2014


Ответы (2)


Джейк Уортон ответил 12 декабря 2014 г. лучший кандидат на решение, которое будет реализовано на этапе 2.5:

picasso.load('http://example.com/')
  .cachePolicy(NO_CACHE, NO_STORE)
  .networkPolicy(NO_CACHE, NO_STORE, OFFLINE)
  .into(imageView);

enum MemoryPolicy {
  NO_CACHE, NO_STORE
}
enum NetworkPolicy {
  NO_CACHE, NO_STORE, OFFLINE
}

обновить

или теперь вы можете использовать:

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

как ответил mes в этом ответ

person AbdelHady    schedule 26.08.2015

Ответ от Джейка Уортона.

Вы не можете [сделать это]. Но мы его добавим: github.com/square/picasso/issues/438.

person Community    schedule 13.09.2014