Откройте некоторые страницы сайта из WebView во внешнем браузере. - PullRequest
0 голосов
/ 01 ноября 2019

Приложение отображает страницу сайта. Чтобы перейти к внешним ссылкам во внешнем браузере, используйте следующее:

private class MyWebViewClient extends WebViewClient {
    @TargetApi(Build.VERSION_CODES.N)
    @Override
    public boolean shouldOverrideUrlLoading(WebView view, WebResourceRequest request) {
        String url = request.getUrl().toString();

        if(url.contains("mysite.com") && !url.contains("tracker") && !url.contains("contact")) {
            view.loadUrl(request.getUrl().toString());
        } else {
            Intent i = new Intent(Intent.ACTION_VIEW, Uri.parse(url));
            startActivity(i);
        }

        return true;
    }
}

Мне также нужно открыть некоторые страницы (tracker.php & contact.php), размещенные на этом сайте, по ссылке ввнешний браузер.

Решение выше не работает, все страницы с этого сайта открываются в самом приложении.

Подскажите, как это реализовать?

1 Ответ

0 голосов
/ 15 ноября 2019

На самом деле вышеприведенный код работает. Достаточно было очистить кеш.

Во время разработки приложения я установил кнопку очистки кеша и прочего:

    fab = (FloatingActionButton) findViewById(R.id.fab);
    fab.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View view) {
            WebView.clearHistory();
            WebView.clearFormData();
            WebView.clearCache(true);
            WebView.reload();
        }
    });
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...