Webview在浏览器中打开某些链接

时间:2018-04-16 21:43:35

标签: java android

我有一个应用程序可以在相同的意图和同一webview中打开我的网页。现在,我有一个页面,我希望它在用户请求时在浏览器中打开。那可能吗? 这是我的代码:

 WebView myWebView = (WebView) findViewById(R.id.webView);
    WebSettings webSettings = myWebView.getSettings();
    webSettings.setJavaScriptEnabled(true);
    myWebView.getSettings().setAllowFileAccessFromFileURLs(true);
    myWebView.getSettings().setAllowUniversalAccessFromFileURLs(true);
    myWebView.loadUrl("https://mywebpage.me");
    String url = myWebView.getUrl();

myWebView.setWebChromeClient(new WebChromeClient());

如果用户导航到https //:mywebpage.me/About.html,我希望它在浏览器中显示。

1 个答案:

答案 0 :(得分:0)

你应该听导航事件。

  1. 创建 WebViewClient

    private class MyClient extends WebViewClient {
    
        @Override
        public boolean shouldOverrideUrlLoading(WebView view, String url) {
            if(url.equals(PUT_YOUR_URL_HERE)) {
                startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse(url)));
                return true;
            }  
    
            return false;
        }
    }
    
  2. 将其传递给 WebView

    myWebView.setWebViewClient(new MyClient());
    
  3. 顺便说一下,这个方法在API级别24中已弃用。