कस्टम टैब, Android ब्राउज़र में मौजूद एक सुविधा है. इससे ऐप्लिकेशन डेवलपर को, सीधे तौर पर अपने ऐप्लिकेशन में ब्राउज़र को पसंद के मुताबिक बनाने का विकल्प मिलता है.
स्मार्टफ़ोन के शुरुआती दिनों से ही, मोबाइल ऐप्लिकेशन में वेब कॉन्टेंट लोड करने की सुविधा उपलब्ध है. हालांकि, पुराने विकल्पों से डेवलपर को समस्याएं आ सकती हैं. असल ब्राउज़र लॉन्च करने से, लोगों के लिए कॉन्टेक्स्ट स्विच करना मुश्किल हो जाता है. इसे पसंद के मुताबिक नहीं बनाया जा सकता. वहीं, WebViews, वेब प्लैटफ़ॉर्म की सभी सुविधाओं के साथ काम नहीं करते. साथ ही, ये ब्राउज़र के साथ स्थिति शेयर नहीं करते और रखरखाव का खर्च बढ़ाते हैं.
कस्टम टैब की मदद से, उपयोगकर्ता ब्राउज़िंग करते समय ऐप्लिकेशन में ही बने रहते हैं. इससे ऐप्लिकेशन में उनकी दिलचस्पी बढ़ती है और ऐप्लिकेशन छोड़ने का जोखिम कम होता है. कस्टम टैब, सीधे तौर पर उपयोगकर्ता के पसंदीदा ब्राउज़र से जुड़े होते हैं. साथ ही, ब्राउज़र की स्थिति और ऑफ़र की गई सुविधाओं को अपने-आप शेयर करते हैं. अनुरोधों, अनुमतियों या कुकी स्टोर को मैनेज करने के लिए, आपको कस्टम कोड लिखने की ज़रूरत नहीं है.
कस्टम टैब क्या-क्या कर सकते हैं?
कस्टम टैब का इस्तेमाल करने पर, आपका वेब कॉन्टेंट उस रेंडरिंग इंजन में लोड होता है जो उपयोगकर्ता के पसंदीदा ब्राउज़र को पावर देता है. कोई भी एपीआई या वेब प्लैटफ़ॉर्म सुविधा वहां उपलब्ध है और आपकी कस्टम टैब में भी उपलब्ध है. उनका ब्राउज़िंग सेशन, सेव किए गए पासवर्ड, पेमेंट के तरीके, और पते उसी तरह दिखते हैं जैसे वे पहले से देखते आ रहे हैं.
कस्टम टैब में क्या-क्या कस्टमाइज़ किया जा सकता है?
थोड़ा बहुत! कस्टम टैब की मदद से, ब्राउज़र Chrome और उपयोगकर्ता अनुभव को बेहतर तरीके से कंट्रोल किया जा सकता है. ऐप्लिकेशन में, Intent का इस्तेमाल करके कस्टम टैब लॉन्च किया जाता है. इस इंटेंट को कॉल करने पर, CustomTabIntent में कई एट्रिब्यूट जोड़े जा सकते हैं, ताकि आपको अपनी पसंद के मुताबिक अनुभव मिल सके. यहां कुछ ऐसे बदलाव दिए गए हैं जिन्हें जोड़ा जा सकता है:
- आपके ऐप्लिकेशन के बाकी हिस्सों से मेल खाने वाले, कस्टम एंट्री और एक्ज़िट ऐनिमेशन
- अपने ऐप्लिकेशन की ब्रैंडिंग से मेल खाने के लिए, टूलबार के रंग में बदलाव करना
- रंगों में एकरूपता, जो आपके ऐप्लिकेशन में बनी रहती है. भले ही, उपयोगकर्ता हल्के और गहरे रंग वाली थीम के बीच स्विच करें
- ब्राउज़र के टूलबार और मेन्यू में कस्टम कार्रवाइयां और एंट्री
- कस्टम टैब की लॉन्च ऊंचाई को कंट्रोल करें. इससे, वेब स्टोर के साथ इंटरैक्ट करते समय वीडियो स्ट्रीम करने जैसी सुविधाएं चालू की जा सकती हैं
इसके अलावा, उपयोगकर्ता किसी कस्टम टैब को छोटा करके, उसके नीचे मौजूद ऐप्लिकेशन के साथ इंटरैक्ट कर सकते हैं. साथ ही, वे अपनी प्रोग्रेस को सेव रखते हुए, कस्टम टैब को किसी भी समय वापस ला सकते हैं, ताकि वे अपनी यात्रा जारी रख सकें. इससे लोगों को कस्टम टैब बंद करने का विकल्प मिलता है, ताकि वे वेब और नेटिव ऐप्लिकेशन के बीच आसानी से मल्टीटास्किंग कर सकें. यह सुविधा, कस्टम टैब के लिए डिफ़ॉल्ट रूप से चालू होती है.
यह हर चीज़ से बहुत दूर है. कस्टम टैब बहुत काम के होते हैं और इन पर काम चल रहा है. इन सुविधाओं के उपलब्ध होने पर, हर ब्राउज़र को इनके लिए सहायता जोड़नी होगी. हालांकि, लगभग सभी ब्राउज़र में कुछ हद तक यह सुविधा काम करती है. इसलिए, यह जानना ज़रूरी है कि आपके उपयोगकर्ता के ब्राउज़र में कौनसी सुविधाएं उपलब्ध हैं और कौनसी नहीं. सुविधाओं की तुलना करने वाली टेबल देखें. इससे आपको यह पता चलेगा कि लोकप्रिय Android ब्राउज़र पर कौनसी सुविधाएं उपलब्ध हैं.
GitHub पर मौजूद हमारे सैंपल का इस्तेमाल करके, इस सुविधा को अभी आज़माया जा सकता है.
मुझे कस्टम टैब का इस्तेमाल कब करना चाहिए?
वेब कॉन्टेंट लोड करने का कोई एक "सही" तरीका नहीं है. कुछ स्थितियों में, वेबव्यू का इस्तेमाल करना सही रहेगा. उदाहरण के लिए, अगर आपको अपने ऐप्लिकेशन में सिर्फ़ अपना कॉन्टेंट होस्ट करना है या आपको अपने ऐप्लिकेशन से सीधे तौर पर JavaScript इंजेक्ट करनी है. अगर आपका ऐप्लिकेशन लोगों को डोमेन से बाहर के यूआरएल पर रीडायरेक्ट करता है, तो कस्टम टैब में मौजूद शेयर की गई बिल्ट-इन स्थिति का मतलब है कि वे एक बेहतर विकल्प हैं. कस्टम टैब की अन्य खूबियां ये हैं:
- सुरक्षा: कस्टम टैब, Google की सुरक्षित ब्राउज़िंग सुविधा का इस्तेमाल करते हैं. इससे उपयोगकर्ता और डिवाइस को खतरनाक साइटों से सुरक्षित रखा जाता है.
- परफ़ॉर्मेंस ऑप्टिमाइज़ेशन:
- बैकग्राउंड में ब्राउज़र को पहले से चालू करना, ताकि ऐप्लिकेशन के संसाधनों का इस्तेमाल न हो.
- यूआरएल को पहले से लोड करके, पेज लोड होने में लगने वाले समय को कम किया जा सकता है.
- लाइफ़साइकल मैनेजमेंट: कस्टम टैब लॉन्च करने वाले ऐप्लिकेशन को, टैब के इस्तेमाल के दौरान सिस्टम से नहीं हटाया जाएगा. कस्टम टैब की अहमियत को फ़ोरग्राउंड लेवल पर बढ़ाया जाता है.
- शेयर किया गया कुकी जार और अनुमतियों का मॉडल, ताकि उपयोगकर्ताओं को उन साइटों पर साइन इन न करना पड़े जिनसे वे पहले से कनेक्ट हैं. इसके अलावा, उन्हें उन अनुमतियों को फिर से नहीं देना पड़े जो वे पहले ही दे चुके हैं.
- ब्राउज़र की सुविधाएं, जैसे कि फ़ॉर्म को बेहतर तरीके से भरने के लिए ऑटोमैटिक तरीके से जानकारी भरने की सुविधा, बॉक्स से बाहर उपलब्ध होती हैं.
- उपयोगकर्ता, इंटिग्रेट किए गए 'वापस जाएं' बटन की मदद से ऐप्लिकेशन पर वापस जा सकते हैं.
कस्टम टैब बनाम भरोसेमंद वेब गतिविधि
भरोसेमंद वेब गतिविधियां, कस्टम टैब प्रोटोकॉल को बढ़ाती हैं और इसके ज़्यादातर फ़ायदे शेयर करती हैं. हालांकि, यह डेवलपर को पसंद के मुताबिक यूज़र इंटरफ़ेस (यूआई) उपलब्ध कराने के बजाय, बिना किसी यूआई के ब्राउज़र टैब खोलने की अनुमति देता है. हमारा सुझाव है कि डेवलपर इस सुविधा का इस्तेमाल करें. इससे वे अपने Android ऐप्लिकेशन में, अपने प्रोग्रेसिव वेब ऐप्लिकेशन को फ़ुल स्क्रीन में खोल पाएंगे.
कस्टम टैब कहां उपलब्ध हैं?
कस्टम टैब, Android प्लैटफ़ॉर्म पर ब्राउज़र के साथ काम करने वाली सुविधा है. इसे सबसे पहले Chrome ने वर्शन 45 में लॉन्च किया था. यह प्रोटोकॉल, ज़्यादातर Android ब्राउज़र पर काम करता है.
हमें इस प्रोजेक्ट के बारे में आपके सुझाव, सवाल, और राय का इंतज़ार रहेगा. इसलिए, हम आपको crbug.com पर समस्याएं सबमिट करने और Twitter @ChromiumDev पर सवाल पूछने के लिए प्रोत्साहित करते हैं.
ज़्यादा जानें
अगर आपको कोई सवाल पूछना है, तो StackOverflow पर chrome-custom-tabs टैग देखें.