Android WebView с пользовательским протоколом / схемой: могу ли я заставить его правильно загружать ресурсы?
Я пытаюсь разработать кроссплатформенное (iOS и Android) решение для смешивания кэшированного и загруженного по сети контента в веб-просмотрах. В Android я мог просто загрузить https://www.example.com
затем подключиться shouldInterceptRequest
и вернуть кешированный контент. Но я не могу сделать это в iOS, и вместо этого мне нужно использовать собственную схему URL - указав веб-вид на mycustomscheme://www.example.com
затем перехватывает свои события.
Для согласованности между платформами я бы хотел сделать то же самое на Android. Начальная загрузка страницы, кажется, идет хорошо - я прошу mycustomscheme://www.example.com
, shouldInterceptRequest
событие срабатывает, и я возвращаю контент. Но HTML-код, который я возвращаю, связан с таблицей стилей и файлом JS, и браузер никогда не пытается их загрузить. Даже смотря на инструменты отладчика, они просто не отображаются на вкладке сети, и нет ошибок консоли.
Похоже, что браузер просто игнорирует любую схему URL, которую он не понимает, если только он не находится в URL для самой страницы. Может ли кто-нибудь подтвердить, правда ли это, и есть ли возможность разрешить использование пользовательских схем?