Как загрузить новое окно с помощью URL-адреса HTML? в Android

У меня есть свойство HTML для загрузки

<a href="https://www.w3schools.com" target="_blank" rel="noopener noreferrer">Visit W3Schools.com!</a>

Я загружаю это на свой экран Android, используя

webView.loadDataWithBaseURL(null, my_url, "text/html; charset=utf-8", "UTF-8", null);

Но когда я пытаюсь щелкнуть по ней, ссылка не приводит меня в новое окно, а открывается в текущем окне, хотя я указал target="_blank" в своем HTML.

Как я могу заставить его загружать ссылку в новом окне в Android??


person Mysterious_android    schedule 05.07.2017    source источник
comment
Я думаю, вы имеете в виду свой HTML, а не CSS -> target="_blank"   -  person Patrick Mlr    schedule 05.07.2017
comment
@ Патрик, да, извини, HTML, я отредактирую вопрос, но да, ты знаешь, как открыть ссылку в Android?   -  person Mysterious_android    schedule 05.07.2017
comment
Вы хотите начать новую деятельность или открыть браузер?   -  person Patrick Mlr    schedule 05.07.2017
comment
@PatrickMlr привет, сэр, если он содержит target=_blank, то да Откройте браузер   -  person Mysterious_android    schedule 05.07.2017
comment
Возможно, это может помочь: stackoverflow.com/questions/9355280/   -  person Patrick Mlr    schedule 05.07.2017
comment
Для родного Android. В любом случае спасибо, я нашел ответ @PatrickMlr stackoverflow.com/questions/18187714/   -  person Mysterious_android    schedule 05.07.2017


Ответы (1)


Нашел ответ по этой ссылке Android - открыть целевые ссылки _blank в WebView с помощью внешнего браузера

Обобщить:

    wv.getSettings().setSupportMultipleWindows(true);
wv.setWebChromeClient(new WebChromeClient() {
    @Override
    public boolean onCreateWindow(WebView view, boolean dialog, boolean userGesture, android.os.Message resultMsg)
    {
        WebView.HitTestResult result = view.getHitTestResult();
        String data = result.getExtra();
        Context context = view.getContext();
        Intent browserIntent = new Intent(Intent.ACTION_VIEW, Uri.parse(data));
        context.startActivity(browserIntent);
        return false;
    }
});
person Mysterious_android    schedule 27.10.2017