2016-11-29 3 views
1

Я хотел бы открыть каждую ссылку на веб-обозревателе на пользовательских вкладках хрома при щелчке по ссылке или в закладке.Как открыть каждую ссылку на вкладке webview на chrome?

final WebView webView = (WebView) findViewById(R.id.web_view); 
    WebSettings webSettings = webView.getSettings(); 
    webSettings.setJavaScriptEnabled(true); 
    webView.setWebViewClient(new WebViewClient(){ 
     @Override 
     public boolean shouldOverrideUrlLoading(WebView view, String url) { 
      webView.loadUrl(uri); 
      return true; 
     } 

     @Override 
     public void onLoadResource(WebView view, String url) { 
      if (url.startsWith(uri)){ 
       webView.loadUrl(uri); 
      }else{ 
       Uri uri = Uri.parse(url); 
       CustomTabsIntent.Builder builder = new CustomTabsIntent.Builder(); 
       builder.build().launchUrl(MainActivity.this, uri); 
      } 
     } 
    }); 

ответ

1

Вы можете перенаправить свой адрес во внешнем веб-браузере, как

final WebView webView = (WebView) findViewById(R.id.web_view); 
    WebSettings webSettings = webView.getSettings(); 
    webSettings.setJavaScriptEnabled(true); 
    webView.setWebViewClient(new WebViewClient() { 
     @Override 
     public boolean shouldOverrideUrlLoading(WebView view, String url) { 
      if (url.contains("http")) { // Could be cleverer and use a regex 
       Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse(url)); 
       mContext.startActivity(intent); 
       return true; 
      } 
      return false; 
     } 

     @Override 
     public void onLoadResource(WebView view, String url) { 
     } 
    }); 
Смежные вопросы