2017-02-23 73 views
0

Я полностью внедрил webview, оснащенный пользовательским веб-клиентом и его делегатами (shouldInterceptRequest и onLoadResource), но теперь я хочу открыть собственный браузер, когда пользователь нажимает ссылку на конкретный URL-адрес и блокирует просмотр веб-страницы с помощью навигации по нему.Я хочу, чтобы мой Android-браузер запускал определенный URL-адрес в собственном браузере

Я реализовал «shouldInterceptRequest» (для пользовательского поведения с сайтами в моей внутренней сети), и когда пользователь нажимает ссылку на этот конкретный сайт, который я хочу открыть в собственном браузере, я вижу, что запрос, shouldInterceptRequest». Теперь я не знаю, как предотвратить загрузку этого URL-адреса, поскольку этот делегат ожидает WebResourceResponse. И если я верну нул, веб-просмотр начнет загрузку URL-адреса.

+0

Когда пользователь нажимает на тег с target = "_ blank" или вызывается window.open, [метод onCreateWindow класса WebChromeClient] (https://developer.android.com/reference/android/webkit/WebChromeClient.html#onCreateWindow) называется. Как насчет переопределения метода onCreateWindow? – gilchris

ответ

0

Переопределить boolean shouldOverrideUrlLoading (WebView view,WebResourceRequest request), чтобы вернуть true и запустить собственный браузер.

+0

shouldOverrideUrlLoading не запускается, когда я нажимаю эту ссылку (javascript href). Только активировать InterceptRequest и onLoadResource. – Chicowitz

 Смежные вопросы

  • Нет связанных вопросов^_^