Ссылка WebView нажмите открыть браузер по умолчанию

Сейчас у меня есть приложение, которое загружает веб-просмотр, и все клики хранятся в приложении. То, что я хотел бы сделать, - это когда в приложении открыта определенная ссылка, например http://www.google.com, которая открывает браузер по умолчанию. Если у кого-нибудь есть идеи, пожалуйста, дайте мне знать!

Ответ 1

Мне пришлось сделать то же самое сегодня, и я нашел очень полезный ответ на StackOverflow, который хочу поделиться здесь, если кому-то это понадобится.

Источник (от sven)

webView.setWebViewClient(new WebViewClient(){
    public boolean shouldOverrideUrlLoading(WebView view, String url) {
        if (url != null && url.startsWith("http://")) {
            view.getContext().startActivity(
                new Intent(Intent.ACTION_VIEW, Uri.parse(url)));
            return true;
        } else {
            return false;
        }
    }
});

Ответ 2

WebView webview = (WebView) findViewById(R.id.webview);
    webview.loadUrl(http://www.playbuzz.org);

вам не нужно включать этот код  //webview.setWebViewClient(новый WebViewClient()); вместо этого вам нужно использовать d-код ниже

webview.setWebViewClient(new WebViewClient(){
        public boolean shouldOverrideUrlLoading(WebView view, String url) {

            String url2="http://www.playbuzz.org/";
             // all links  with in ur site will be open inside the webview 
             //links that start ur domain example(http://www.example.com/)
            if (url != null && url.startsWith(url2)){
                return false;
                } 
           // all links that points outside the site will be open in a normal android browser
          else  {
                view.getContext().startActivity(
                new Intent(Intent.ACTION_VIEW, Uri.parse(url)));
                return true;
                }
        }
    });

Ответ 3

вы можете использовать Intent для этого:

Intent browserIntent = new Intent("android.intent.action.VIEW", Uri.parse("your Url"));
startActivity(browserIntent);

Ответ 4

Вам нужно только добавить следующую строку

yourWebViewName.setWebViewClient(new WebViewClient());

Отметьте этот для официальной документации.

Ответ 5

Вы можете использовать Intent для этого:

Uri uriUrl = Uri.parse("http://www.google.com/"); 
Intent launchBrowser = new Intent(Intent.ACTION_VIEW, uriUrl);  
startActivity(launchBrowser);