Я пытался включить кэширование в Android WebView, но каждая конфигурация, которую я видел на SO, заканчивается сбоем.
Вот что у меня есть:
У меня есть веб-страница с Iframeвнутри, который загружает 10-12 страниц в цикле, все содержимое этих страниц имеет заголовок Cache-Control: max-age=86400
.
Если я загружаю эти страницы нормально в браузере, они работают и страницы кэшируются.
Итак, вот конфигурация, которая у меня есть
getSettings().setJavaScriptEnabled(true);
getSettings().setJavaScriptCanOpenWindowsAutomatically(true);
getSettings().setDomStorageEnabled(true);
getSettings().setMediaPlaybackRequiresUserGesture(false);
getSettings().setAppCacheEnabled(true);
getSettings().setAppCachePath(context.getCacheDir().getAbsolutePath());
getSettings().setCacheMode(WebSettings.LOAD_DEFAULT);
Эти настройки работают для воспроизведения мультимедиа и включения js
EDIT
Я построил новыйприложение и попытался загрузить Google с помощью метода loadUrl
и перезагрузил его с помощью кнопки, когда сеть была отключена, он смог перезагрузить страницу без интернета, это означает, что она кэшировала эту страницу.
Так что проблема в том, чтоwebview - это не кэширование страниц, которые загружаются страницей.
Если кто-нибудь знает, как мы можем кэшировать контент, который загружается при загрузке страниц webview, это было бы очень полезно.
-Спасибо