2012-09-27 6 views
3

Я использую в течение некоторого времени Android Http Image Manager, а недавно я перешел на Android Universal Image LoaderAndroid библиотека Загрузчик изображений с поддержкой ETags, If-Modified-Since

Боюсь, ни один из них имеют поддержку для проверки, если локальный кеш обновляется.

То, что я в настоящее время ищу это изображение Loader библиотеки при поддержке и поддержкой для проверки удаленных изменений через ETag и/или If-Modified-Since

ответ

1

Вопрос сообщества ответ от Github AUIL отслеживания проблем. Спасибо NOSTRA

https://github.com/nostra13/Android-Universal-Image-Loader/issues/75

public class URLConnectionImageDownloader extends ImageDownloader { 
    @Override 
    public InputStream getStreamFromNetwork(URI imageUri) throws IOException { 
     URLConnection conn = imageUri.toURL().openConnection(); 
     // check etag/last-modification-date/... params 
     // if image was changed then we should delete cached image from memory cache and disc cache 

     // Delete image from caches 
     String uri = imageUri.toString(); 
     File imageFile = ImageLoader.getDiscCache().get(uri) 
     if (imageFile.exists()) { 
      imageFile.delete(); 
     } 
     MemoryCacheAware<String, Bitmap memoryCache = ImageLoader.getMemoryCache(); 
     for (String cacheKey : memoryCache.keys()) { 
      if (cacheKey.contains(uri) { 
       memoryCache.remove(cacheKey); 
      } 
     } 


     return new FlushedInputStream(new BufferedInputStream(conn.getInputStream())); 
    } 
}