Web Görünümündeki bağlantılar için Özel Sekme açma

Web Görünümleri, kendi web içeriğinizi uygulamanıza sorunsuz bir şekilde entegre etmek için idealdir. Birinci taraf içeriğiniz size ait olmayan web sitelerinin bağlantılarını içeriyorsa bunları Web Görünümü yerine bir Özel Sekme'de açmak mantıklı olabilir. Bunun iki avantajı vardır:

  1. Birinci taraf kullanıcı deneyimi, üçüncü taraf web içeriği kullanıcı deneyiminden açıkça ayrılmalıdır.
  2. 3. taraf web siteleri, çerezlerin varsayılan tarayıcıyla paylaşılmasından faydalanır.

Bunu uygulamak için WebViewClient öğenizde özel bir onLoadResource işleyicisi yapılandırın:

WebView webView = (WebView)findViewById(R.id.webview);
webView.setWebViewClient(new WebViewClient() {
    @Override
    public boolean shouldOverrideUrlLoading(WebView view, String url) {
        return true;
    }

    @Override
    public void onLoadResource(WebView view, String url) {
        if (url.startsWith("http://www.my-own-domain.com")) {
            //Handle Internal Link...
        } else {
            //Open Link in a Custom Tab
            Uri uri = Uri.parse(url);
            new CustomTabsIntent.Builder()
                  .build()
                  .launchUrl(context, uri);                            
        }
    }
});