본문 바로가기

안드로이드

[android]Glide v4 캐시 삭제(이미지 갱신 안 됨)

GLIDE V4 사용중인데 같은 URL에서 불러올 때 URL 이미지는 변경되었는데 GLIDE에서 변경이 안될때가 있다.

수십번의 구글링을 통해 해결책을 찾았다.

 GlideApp.with(imageView)
            .load(url)
            .signature(new ObjectKey(System.currentTimeMillis()))
            .placeholder(R.drawable.sky)
            .error(R.drawable.sky)
            .into(imageView);

핵심은

.signature(new ObjectKey(System.currentTimeMillis()))

이부분이었다.

V4에서는 코드가 바뀌었는데 RequestOptions를 사용하면 된다.

RequestOptions requestOptions = new RequestOptions();
        requestOptions.diskCacheStrategy(DiskCacheStrategy.NONE);
        requestOptions.skipMemoryCache(false);
        requestOptions.centerCrop();
        requestOptions.circleCrop();
        requestOptions.signature(new ObjectKey(System.currentTimeMillis()));
        
        Glide.with(context)
                .load(url)
                .apply(requestOptions).into(imageView);

이렇게 사용 할 수 있다.