2017-02-03 11 views
0

Я знаю, что это очень простой вопрос. Я попытался найти множество решений, но я не могу их понять.Удалить кеш при использовании скольжения

То, что я хочу

загрузки изображения на сервер и в ответ я получаю URL, но проблема при настройке изображения с помощью этого URL, старый образ установлен. Это происходит потому, что скольжение берет старый кеш и не обновляет кеш.

Как это решить.

Glide.clear(profilePic); 

Glide.with(getApplicationContext()) 
    .load(url) 
    .diskCacheStrategy(DiskCacheStrategy.ALL) 
    .skipMemoryCache(true) 
    .transform(new CircleTransform(MainProfile.this)) 
    .into(profilePic); 

в настоящее время, ПОС меняется, но когда я нажимаю кнопку назад и вернуться к этой деятельности, то он загружает старый образ. Загрузка изображения из кеша.

//setting up the profile pic 
Glide.with(getApplicationContext()) 
.load(userProfilePicUrl) 
.asBitmap() 
.centerCrop() 
.into(new BitmapImageViewTarget(profilePic) { 
    @Override 
    protected void setResource(Bitmap resource) { 
     RoundedBitmapDrawable circularBitmapDrawable = 
           RoundedBitmapDrawableFactory.create(MainProfile.this.getResources(), resource); 
     circularBitmapDrawable.setCircular(true); 

     profilePic.setImageDrawable(circularBitmapDrawable); 
    } 
}); 

Проблема в том, что когда я возвращаюсь к этой деятельности, она показывает старый pic вместо нового.

ответ

0

Попробовать это

Glide.with(DemoActivity.this) 
.load(Uri.parse("file://" + imagePath)) 
.diskCacheStrategy(DiskCacheStrategy.NONE) 
.skipMemoryCache(true) 
.into(mImage); 

Замена DiskCacheStrategy.ALL на DiskCacheStrategy.NONE

+0

никакой помощи. когда я возвращаюсь, он показывает старое изображение @android_griezmann –

+0

Ни в коем случае он не работает отлично для меня, будд! –

+0

Да! его работа для меня тоже. –

0

Может быть, вы можете попробовать это:

Glide.get(context).clearDiskCache() 

Try reading this link as a ref

Однако это решение также кажется более при условии.

Glide.with(Activity.this) 
.load(Uri) 
.diskCacheStrategy(DiskCacheStrategy.NONE) 
.skipMemoryCache(true) 
.into(Image); 

Ссылка на который подобный вопрос задан до, который вы можете найти here.

Надеюсь, что несколько помогает.

Приветствия

0

Glide имеет встроенные функции для аннулируют cache.By с помощью signature() функции старого кэш может быть признан недействительным.

GlideApp.with(MainProfile.this) 
.load(mediaStoreUri) 
.signature(new MediaStoreSignature(mimeType, dateModified, orientation)) 
.into(view); 

 Смежные вопросы

  • Нет связанных вопросов^_^