Я использую Picasso
, чтобы загрузить изображение в мой ImageView
как это:Очистить кэш сети с помощью Пикассо
Picasso.with(getContext())
.load(store.getString("profile"))
.placeholder(R.drawable.ic_nothumb)
.resize(120, 120)
.into(iv);
Где store.getString("profile") = a
строка, представляющая мой URL.
Однако, даже если путь не изменяется, когда я обновляю изображение в том же пути, Picasso
все еще загружает предыдущее изображение.
Я прочитал, что мы можем очистить кэш сети, но я не могу найти способ использовать .invalidate()
метод, ни .cachePolicy()
или .networkPolicy()
, когда я пытаюсь использовать их у меня есть неразрешенный символ.
EDIT: Я обновил свой Picasso
версию для компиляции
"com.squareup.picasso:picasso:2.5.2"
И теперь я могу использовать .networkPolicy()
, однако я получил эту ошибку я не могу найти какое-либо решение, чтобы исправить это:
E/AndroidRuntime: FATAL EXCEPTION: main Process: dev.com.diaginfo, PID: 10614 java.lang.NoClassDefFoundError: Failed resolution of: Lcom/squareup/picasso/NetworkPolicy; Caused by: java.lang.ClassNotFoundException: Didn't find class "com.squareup.picasso.NetworkPolicy" on path: DexPathList
Отметьте это сообщение http://stackoverflow.com/questions/22016382/invalidate-cache-in-picasso –
«Я прочитал, что мы можем очистить сетевой кеш, но я не могу найти способ использования метода .invalidate(), а также .cachePolicy() или .networkPolicy(), когда я пытаюсь их использовать, у меня есть Unresolved Symbol. " –
Новая ошибка, с которой вы сталкиваетесь, вероятно, вызвана переходом по пределу dex. Однако это совершенно другой случай и должен быть опубликован в новом вопросе. – manabreak