2016-02-04 3 views
0

Im использует Picasso и okhttp для загрузки и кеширования изображений на диск. Im, используя нижеприведенный фрагмент кода, чтобы установить кеш 10 МБ на клиент okhttp и использовать его для Picasso.DiskLruCache JakeWharton автоматически очищается

File folder = new File(context.getCacheDir(),"HomePageCache"); 
if (!folder.exists()) 
    folder.mkdir(); 
okHttpClient.setCache(new com.squareup.okhttp.Cache(folder, 1024 * 1024 * 10)); 
OkHttpDownloader okHttpDownloader = new OkHttpDownloader(okHttpClient); 
picasso = new com.squareup.picasso.Picasso.Builder(context).indicatorsEnabled(true).downloader(okHttpDownloader).build(); 

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

Я проверяю размер кеша изображения, чтобы быть уверенным, и он никогда не пересекал 2 МБ.

Есть ли другая причина, по которой мой кеш очищается?

+1

LastRecentlyUsed может быть одной из причин, также проверить заголовок истечения кэша ответа для изображения. –

ответ

0

Как указано в комментарии Nikola, заголовок кэша истекает несет ответственность за аннулирование кешированных изображений.