Intereting Posts
Как лучше организовать управление проектами iOS и Android-приложений для одного и того же проекта в JIRA Android EPSON therm Печать данных с веб-просмотра при нажатии? Если принтер не найден? Как удалить фокус из одного editText Как создать файл изображения SD-карты для эмулятора Android? Получить контактную информацию от android contact picker В чем разница между setBackgroundResource и setBackgroundDrawable Перехват сетевого вызова с Android Java / JNI Невозможно разместить плавучую кнопку действия (FAB) между заголовком и элементами в DrawerLayout с помощью RecyclerView Обработка видео в Android Исключение автофокусировки Как открыть меню Контекст Android с кнопкой щелчка в адаптере listview? OnItemCLickListener не работает в listview Как использовать GWT-RequestFactory в Android SyncAdapter (всегда получая ValidationTool-Error) Идентификация запроса волейбола Android в разделе обрезки Как Xamarin для Android (Mono для Android) отличается от разработки на базе Android?

Отключить управление кешем волейбола

Есть ли способ отключить управление кэшем Volley? Мое приложение использует библиотеку Google Volley для управления транспортным уровнем, но у меня есть собственная реализация менеджера кэша, потому что сервер не использует заголовок Cache-Control. Я хочу сохранить пространство, которое использует кеш Volley, потому что оно абсолютно бесполезно.

Есть ли простой способ? Или я должен реализовать свою собственную версию RequestQueue ?

Любое предложение оценили.

Solutions Collecting From Web of "Отключить управление кешем волейбола"

Если вы используете любой из классов запроса по умолчанию, реализованных в volley (например, StringRequest, JsonRequest и т. Д.), Затем вызовите setShouldCache (false) прямо перед добавлением объекта запроса в залп RequestQueue:

 request.setShouldCache(false); myQueue.add(request); 

Если у вас есть собственная реализация класса Request, вы можете вызвать setShouldCache (false) в конструкторе вашего класса.

Это решение отключает кэширование для каждого запроса отдельно. Если вы хотите отключить кеширование в глобальном масштабе из библиотеки volley, вы можете навсегда установить для переменной mShouldCache значение false в классе Request.

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

 RequestQueue queue = new RequestQueue(new NoCache(), new BasicNetwork(new HurlStack())); 

Для получения дополнительной информации см. Эту документацию .

 request.setShouldCache(false); 

Кажется, недостаточно для запросов GET. Однако очистка кеша перед добавлением в очередь, похоже, помогает

 myRequestQueue.getCache().clear(); 

Я поместил это в свой getRequestQueue() в singleton getRequestQueue() Volley. Перед возвратом очереди.