Android直接链接到默认浏览器

时间:2011-07-05 06:01:58

标签: android

我有一个加载了网站的webview。当我点击链接说“完整网站”时,我想启动手机的默认浏览器,我该如何实现?目前,它也会在Web视图中加载整个站点。谢谢!

2 个答案:

答案 0 :(得分:2)

您需要将WebViewClient附加到WebView对象:

WebView myWebView = (WebView) findViewById(R.id.webview);
myWebView.setWebViewClient(new MyWebViewClient());
........

private class MyWebViewClient extends WebViewClient {
    @Override
    public boolean shouldOverrideUrlLoading(WebView view, String url) {
        if (Uri.parse(url).getHost().equals("www.mysite.com")) {
           //Load the site into the default browser
             Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse(url));
             startActivity(intent);
             return true;
        }
        // Load url into the webview
       return false;
    }
}

只需调整所需的if-statement

即可

答案 1 :(得分:1)

参考WebViewClient。基本上,你必须

  1. 创建您自己的webview客户端
  2. 覆盖shouldOverrideUrlLoading。放置何时在浏览器中打开链接的逻辑,何时不打开。
  3. 将自定义网络视图客户端设置为默认的webview客户端。

    WebView myWebView = (WebView) findViewById(R.id.webview); myWebView.setWebViewClient(new WebViewClient());