У меня в приложении есть WebView, в котором открыт какой-то сайт (всегда один и тот же, это моя собственная страница). На сайте есть код JS, который загружает изображения с удаленного хоста.
Я хочу перехватывать запросы к таким изображениям (по шаблону URL) и возвращать свой контент (т. Е.другое изображение) или оставьте запрос нетронутым в зависимости от внутренней логики приложения.
Возможно ли это сделать?
РЕДАКТИРОВАТЬ : Текущее состояние вопроса ...
WebView
имеет возможность установить WebViewClient
(как отмечает Аксаридакс). WebViewClient
имеет два полезных метода
shouldOverrideUrlLoading
onLoadResource
shouldOverrideUrlLoading
может перехватывать любую загрузку URL, если загрузка инициируется взаимодействием со страницей (т. Е. Нажата ссылка на странице, WebView.loadURL ("") не запускает этот метод). Он также может отменить загрузку URL, вернув false. Этот подход непригоден для использования, потому что он не может перехватить загрузку ресурсов страницы (а изображения, которые мне нужно перехватить, являются таким ресурсом страницы).
onLoadResource
запускается каждый раз, когда загружается ресурс страницы (и изображения! Спасибо jessyjones), но отменить это невозможно. Это также делает этот метод не подходящим для моей задачи.