как получить доступ к локальным файлам приложения для Android внутри веб-просмотра - PullRequest
0 голосов
/ 11 июля 2019

У меня есть веб-приложение, которое я загружаю в веб-браузер Android.

Приложение состоит из нескольких огромных файлов размером 1 МБ, которые не кэшируются в веб-просмотре, поэтому время, необходимое для загрузки файлов каждый раз, немного велико.,В качестве эксперимента я хотел включить эти файлы в папку ресурсов приложения и загрузить их оттуда, используя выборку javascript внутри веб-просмотра.

Но в итоге я получил исключение cors, как показано ниже

VM45:769 Fetch API cannot load `file:///android_asset/kixr_detector_001.wasm. URL scheme must be "http" or "https" for CORS request.`

Есть ли способ загрузить файл, находящийся в папке ресурсов Android, в приложение, работающее в веб-обозрении?или другой способ кэширования этих файлов.

Любая помощь очень ценится.Заранее спасибо.

Ответы [ 2 ]

0 голосов
/ 11 июля 2019

вы можете включить кеш веб-просмотра в настройках веб-просмотра ниже код

webview.getSettings().setCacheMode(WebSettings.LOAD_DEFAULT)       
webview.getSettings().setAppCacheEnabled(true); 
0 голосов
/ 11 июля 2019

Из комментария, упомянутого здесь: Fetch API не может загрузить файл: /// C: / Users / Jack / Desktop / Books_H / book-site / public / api / books.Схема URL должна быть «http» или «https» для запроса CORS

Браузеры не разрешают file: // URL с вызовами ajax (по соображениям безопасности).Вам нужно загрузить свою веб-страницу через веб-сервер и сделать запрос AJAX через этот веб-сервер, используя http: // или https://,, а не file: // -


(Из комментариев)
Вы можете попытаться включить кэширование в WebView с помощью:

webViewComp.getSettings().setCacheMode(WebSettings.LOAD_CACHE_ELSE_NETWORK);
webViewComp.getSettings().setAppCacheEnabled(true)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...