2017-12-27 26 views
0

이미지 파일이 서버에서 다운로드되었으며 항상 동일한 파일 이름으로 저장됩니다.Glide v4.4 메모리 캐시 및 디스크 캐시 오류 비활성화

은 그래서 글라이드의 이전 버전에서, 나는 그것이 같은 이름의 이미지 변화와 파일에 대한 작업을 보인다

Uri uri = Uri.fromFile(new File(downloadPath)); 
GlideApp.with(this) 
     .load(uri) 
     .diskCacheStrategy(DiskCacheStrategy.NONE) 
     .skipMemoryCache(true) 
     .into(mDownloadImageView); 

테스트되었습니다. 위와 같은 공식 문서 Glide Caching.

글라이드 4.4.0에서이 코드를 다시 사용했지만 작동하지 않습니다. 다음과 같이 서명을 추가해야합니다.

Uri uri = Uri.fromFile(new File(downloadPath)); 
GlideApp.with(this) 
     .load(uri) 
     .signature(new ObjectKey(System.currentTimeMillis())) 
     .diskCacheStrategy(DiskCacheStrategy.NONE) 
     .skipMemoryCache(true) 
     .into(mDownloadImageView); 

서명 키를 추가 한 후 작동합니다.

누구나 동일한 시나리오를 경험 했습니까? DiskcacheStrategy None 그리고 메모리 캐쉬를 건너 뜁니다. 전혀 효과가 없습니다.

답변

0

예, 동일한 문제가 있습니다. 매번 이미지를 새로 고치려면 diskCacheStrategy()를 NONE으로 설정하고 skipMemoryCache()를 true로 설정하여 서명을 사용해야합니다.

또 다른 문제점은 diskCacheStrategy()를 일부 서명으로 ALL로 설정하면 (일부 경우 캐시 새로 고침을 강제 적용하기 위해) 작동하지 않는 것입니다. 서명은 매번 변경되지만 글라이드는 항상 캐시에서 이미지를로드하고 새로 고침하고 싶지 않습니다.

글라이드 v3에서 잘 작동하여 v4로 업그레이드 한 후 올바르게 작동하지 않았습니다.