2013-05-28 2 views
20

Возможно ли изменить политику истечения срока действия кэша в Google Volley lib? Я считаю, что вы можете реализовать свой собственный кеш, однако есть ли простой способ сделать это с реализацией по умолчанию?Установить политику истечения срока действия кэша с помощью Google Volley

ответ

18

Похоже, что в настоящее время срок действия кеша контролируется исключительно заголовками «Кэш» в ответе, так что в основном вы остаетесь на милость сервера. Какой бы сервер не возвращался в «Expires» или «max-age =», который будет использоваться. Мы должны будем использовать наш собственный кеш, если нам нужна специальная политика истечения срока действия ...

+0

спасибо. Кажется, это единственный способ. – Patrick

+0

Как удалить заголовки кэша @Patrick –

+2

Это неверно. Используя ответ, предоставленный oleksandr_yefremov, вы можете переопределить заголовки истечения кеша. – Ljdawson

23

Не нужно писать собственную реализацию кеша. Вы можете изменить метод com.android.volley.toolbox.HttpHeaderParser.parseCacheHeaders (ответ NetworkResponse), игнорировать эти заголовки, установить поля entry.softTtl и entry.ttl для любого значения, которое работает для вас, и использовать ваш метод в вашем классе запросов.

Существует пример в моем ответе на подобный вопрос - Android Volley + JSONObjectRequest Caching

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