वेबव्यू आपके ऐप्लिकेशन में आपके वेब कॉन्टेंट को आसानी से इंटिग्रेट करने का बेहतरीन तरीका है. जब आपके पहले पक्ष के कॉन्टेंट में उन वेबसाइटों के लिंक शामिल हों जिनका मालिकाना हक आपके पास नहीं है, तो उन्हें वेबव्यू के बजाय कस्टम टैब में खोलना बेहतर होता है. इसके दो फ़ायदे हैं:
- पहले पक्ष के UX और 3P वेब कॉन्टेंट को साफ़ तौर पर अलग किया गया है.
- 3P (तीसरे पक्ष की) वेबसाइटों को डिफ़ॉल्ट ब्राउज़र के साथ शेयर की गई कुकी का फ़ायदा मिलता है.
इसे लागू करने के लिए, अपने WebViewClient
में कस्टम onLoadResource
हैंडलर कॉन्फ़िगर करें:
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);
}
}
});