Chrome ऐप्स से ट्रांज़िशन

माइग्रेशन के विकल्प

Chrome ऐप्लिकेशन से माइग्रेट करने के दो मुख्य विकल्प हैं: वेब ऐप्लिकेशन और Chrome एक्सटेंशन:

Chrome ऐप्लिकेशन, वेब ऐप्लिकेशन या Chrome एक्सटेंशन में माइग्रेट किए जा सकते हैं

ज़्यादातर मामलों में, वेब ऐप्लिकेशन को प्राथमिकता दी जाती है. Chrome एक्सटेंशन का इस्तेमाल, कुछ मामलों में उन कामों के लिए किया जा सकता है जिनके लिए वेब काम नहीं करता. जैसे, यूज़र इंटरफ़ेस के बिना बैकग्राउंड में काम करना.

वेब ऐप्लिकेशन

Chrome ऐप्लिकेशन से माइग्रेट करने के लिए, वेब ऐप्लिकेशन बनाना सबसे अच्छा विकल्प है. ऐसा करने पर, वेब की सुविधाओं वाले प्रोजेक्ट जैसी ऐडवांस सुविधाओं का इस्तेमाल किया जा सकता है. 'सुविधाओं' प्रोजेक्ट के तहत आने वाले एपीआई, अब उन ज़्यादातर इस्तेमाल के उदाहरणों को कवर करते हैं जो पहले Chrome ऐप्लिकेशन एपीआई की मदद से हासिल किए जा सकते थे. हालांकि, इनमें से किसी भी सुविधा का इस्तेमाल करना ज़रूरी नहीं है: वेब की सुविधाओं की मदद से, डेवलपर अपनी ज़रूरत के हिसाब से जटिलता का लेवल चुन सकते हैं.

वेब ऐप्लिकेशन के फ़ायदे

Chrome ऐप्लिकेशन की तुलना में, वेब ऐप्लिकेशन के कुछ फ़ायदे हैं:

  • पोर्टेबिलिटी: Chrome ऐप्लिकेशन सिर्फ़ Chrome में चलते हैं. वेब ऐप्लिकेशन ज़्यादातर ब्राउज़र और ऑपरेटिंग सिस्टम पर काम करते हैं. हालांकि, अलग-अलग एपीआई के लिए, इनमें से किसी भी ब्राउज़र या ऑपरेटिंग सिस्टम पर काम करने की सुविधा अलग-अलग होती है.
  • डेवलपर के लिए अनुभव: Chrome ऐप्लिकेशन, वेब ऐप्लिकेशन (एचटीएमएल, JavaScript, और सीएसएस) जैसी ही टेक्नोलॉजी का इस्तेमाल करते हैं. हालांकि, Chrome ऐप्लिकेशन की कुछ बेहतर सुविधाएं (जैसे, बैकग्राउंड पेज) स्टैंडर्ड नहीं हैं. इसलिए, इनके बारे में ज़्यादा जानकारी की ज़रूरत होती है.
  • सुविधाओं का सेट: Chrome ऐप्लिकेशन, उन एपीआई पर निर्भर करते हैं जिन्हें अब मैनेज नहीं किया जाता या जिनमें नई सुविधाएं अपडेट नहीं की जातीं. वेब ऐप्लिकेशन, ओपन वेब पर काम करते हैं. ओपन वेब लगातार अपडेट होता रहता है और इसमें सभी अप-टू-डेट एपीआई का ऐक्सेस होता है.
  • इंस्टॉलेशन और अपडेट: Chrome ऐप्लिकेशन को मैन्युअल तरीके से इंस्टॉल और अपडेट करना पड़ता है. साथ ही, कभी-कभी स्टोर की समीक्षाएं भी करनी पड़ती हैं. वेब ऐप्लिकेशन को सीधे ब्राउज़र से ऐक्सेस किया जा सकता है. साथ ही, इन्हें इंस्टॉल भी किया जा सकता है. वेब ऐप्लिकेशन के लिए, डिप्लॉयमेंट के बाद अपडेट तुरंत लागू हो जाते हैं. ऐसा ब्राउज़र के नई फ़ाइलें फ़ेच करने के तुरंत बाद होता है.
  • सहायता: Chrome ऐप्लिकेशन और वेब ऐप्लिकेशन, दोनों की ही बड़ी कम्यूनिटी हैं. हालांकि, वेब प्लैटफ़ॉर्म की पहुंच ज़्यादा है. साथ ही, यह डेवलपर की मदद के लिए, फ़्रेमवर्क और लाइब्रेरी जैसे डेवलपमेंट टूल की एक बड़ी रेंज उपलब्ध कराता है.

प्रोग्रेसिव वेब ऐप्लिकेशन

प्रोग्रेसिव वेब ऐप्लिकेशन या PWA, वेब ऐप्लिकेशन होते हैं. इन्हें बेहतर सुविधाएं, इंस्टॉल करने की सुविधा, और भरोसेमंदता देने के लिए, आधुनिक एपीआई के साथ बनाया और ऑप्टिमाइज़ किया जाता है. इन सुविधाओं को लागू करने से, आपको वेब पर ऐप्लिकेशन जैसा अनुभव मिलता है.

इंस्टॉल किए जाने की क्षमता

PWA को डेस्कटॉप और मोबाइल, दोनों प्लैटफ़ॉर्म पर इंस्टॉल किया जा सकता है. हालांकि, ऐसा करना ज़रूरी नहीं है, क्योंकि इन्हें सीधे ब्राउज़र से भी ऐक्सेस किया जा सकता है. जो उपयोगकर्ता PWA इंस्टॉल करना चाहते हैं वे आइकॉन और शॉर्टकट की मदद से उसे लॉन्च कर सकते हैं. अपने पीडब्ल्यूए की वेब मेनिफ़ेस्ट फ़ाइल में मेटाडेटा दिया जा सकता है. इससे यह पता चलता है कि इंस्टॉल होने के बाद, ऐप्लिकेशन अपनी विंडो में खुलता है.

विश्वसनीयता

PWA, नेटवर्क की खराब स्थितियों में भी लगातार काम करते हैं. ऐसा, PWA के मुख्य कॉम्पोनेंट की मदद से किया जाता है. इसे सेवा वर्कर कहा जाता है. सर्विस वर्कर की मदद से, नेटवर्क से किए गए अनुरोधों को इंटरसेप्ट किया जा सकता है और कैश मेमोरी में सेव किया गया कॉन्टेंट दिखाया जा सकता है. इससे यह पक्का किया जा सकता है कि ऐप्लिकेशन ऑफ़लाइन या खराब कनेक्टिविटी की स्थिति में भी काम करता रहे. Workbox जैसी लाइब्रेरी, ऑफ़लाइन काम करने वाली सामान्य सुविधाओं को लागू करने के लिए, अलग-अलग तरह की रणनीतियों का एक सेट उपलब्ध कराती हैं. इससे ऐप्लिकेशन को डेवलप करना काफ़ी आसान हो जाता है.

बेहतर सुविधाएं

वेब की सुविधाओं वाला प्रोजेक्ट, वेब ऐप्लिकेशन को कई ऐसे इस्तेमाल के उदाहरणों को पूरा करने में मदद करता है जिन्हें Chrome ऐप्लिकेशन लागू कर सकते हैं. हालांकि, वेब के सुरक्षा मॉडल पर कुछ सीमाएं लागू होती हैं. यहां वेब की बेहतर सुविधाओं के कुछ उदाहरण दिए गए हैं. इनका इस्तेमाल, Chrome ऐप्लिकेशन के मौजूदा एपीआई के बजाय किया जा सकता है:

  • ब्लूटूथ और यूएसबी का ऐक्सेस: वेब ब्लूटूथ और वेब यूएसबी, chrome.bluetooth और chrome.usb के विकल्प के तौर पर काम करते हैं.
  • फ़ाइल सिस्टम मैनेजमेंट: फ़ाइल सिस्टम को ऐक्सेस करने का एपीआई, chrome.fileSystem एपीआई का विकल्प है.
  • शॉर्टकट: वेब ऐप्लिकेशन, अलग-अलग मुख्य इवेंट (उदाहरण के लिए, keydown) को सुनकर, कीबोर्ड शॉर्टकट का इस्तेमाल कर सकते हैं. हालांकि, वेब ऐप्लिकेशन में कुछ ही शॉर्टकट काम करते हैं. जब आपके वेब ऐप्लिकेशन का इस्तेमाल फ़ुलस्क्रीन मोड में किया जाता है, तो कीबोर्ड लॉक एपीआई की मदद से, इन सिस्टम शॉर्टकट को इंटरसेप्ट किया जा सकता है.
  • स्थायी स्टोरेज: अपने वेब ऐप्लिकेशन में स्थायी स्टोरेज की अनुमति का अनुरोध करने पर, Chrome ऐप्लिकेशन में unlimitedStorage अनुमति जैसी सुविधाएं मिल सकती हैं.
  • जगह की जानकारी: वेब ऐप्लिकेशन में Geolocation API का इस्तेमाल, उपयोगकर्ता की जगह की जानकारी पाने के लिए किया जा सकता है. यह जगह की जानकारी की अनुमति के विकल्प के तौर पर इस्तेमाल किया जा सकता है.
  • बैकग्राउंड में प्रोसेसिंग: background अनुमति के विकल्पों में, Background Sync API और Periodic Background Sync API शामिल हैं.
  • क्लिपबोर्ड पर कॉपी करना: Async Clipboard API की मदद से, प्रोग्राम के हिसाब से टेक्स्ट और इमेज, दोनों को कॉपी और चिपकाया जा सकता है.

Chrome एक्सटेंशन

Chrome ऐप्लिकेशन से माइग्रेट करने के लिए, वेब ऐप्लिकेशन सबसे अच्छा विकल्प हैं. हालांकि, कुछ मामलों में Chrome एक्सटेंशन भी एक विकल्प हो सकते हैं. एक्सटेंशन भी वेब टेक्नोलॉजी (एचटीएमएल, सीएसएस, और JavaScript) से बनाए जाते हैं. इनका इस्तेमाल, ब्राउज़र की सुविधाओं को जोड़ने या उनमें बदलाव करने के लिए किया जा सकता है. साथ ही, इनकी मदद से उपयोगकर्ता अनुभव को बेहतर बनाने के लिए, अन्य वेब ऐप्लिकेशन को पसंद के मुताबिक बनाया जा सकता है.

स्टैंडअलोन एक्सटेंशन बनाना

आपको अपने उपयोगकर्ताओं को कैसा अनुभव देना है, इसके आधार पर अपने Chrome ऐप्लिकेशन को एक्सटेंशन में बदला जा सकता है. उदाहरण के लिए, आपके पास ब्राउज़र ऐक्शन बटन देने का विकल्प है. यह बटन, आपके यूज़र इंटरफ़ेस के लिए एक छोटी पॉप-अप विंडो दिखाता है या आपके एक्सटेंशन के ज़रिए उपलब्ध कराए गए पेज पर ले जाता है. यह यूज़र इंटरफ़ेस (यूआई) मॉडल, उन ऐप्लिकेशन के लिए ज़्यादा सही हो सकता है जो ज़्यादातर काम बैकग्राउंड में करते हैं.

वेब ऐप्लिकेशन से Chrome एक्सटेंशन कनेक्ट करना

अगर आपका Chrome ऐप्लिकेशन वेब प्लैटफ़ॉर्म पर उपलब्ध सुविधाएं नहीं देता है, तो Chrome एक्सटेंशन को वेब ऐप्लिकेशन से कनेक्ट किया जा सकता है और उसे एक्सटेंशन एपीआई का ऐक्सेस दिया जा सकता है.इस तरीके का नुकसान यह है कि उपयोगकर्ताओं / आईटी एडमिन को दो अलग-अलग हिस्सों (वेब ऐप्लिकेशन और साथी एक्सटेंशन) को मैनेज करना पड़ता है. यह ध्यान रखना ज़रूरी है कि Chrome एक्सटेंशन कुछ ब्राउज़र पर काम नहीं करते. इसलिए, आपको यह पता लगाना चाहिए कि ज़रूरी फ़ंक्शन कब उपलब्ध नहीं है. साथ ही, इन अन्य ब्राउज़र पर उपयोगकर्ताओं के लिए, जानकारी देने वाला टेक्स्ट उपलब्ध कराना चाहिए.

मुझे वेब ऐप्लिकेशन बनाना चाहिए या Chrome एक्सटेंशन?

Chrome ऐप्लिकेशन से माइग्रेट करने के लिए, वेब ऐप्लिकेशन सबसे सही टेक्नोलॉजी है. कुछ मामलों में, Chrome एक्सटेंशन का इस्तेमाल करना बेहतर विकल्प हो सकता है. फ़ैसला लेने से पहले, अलग-अलग बातों के आधार पर यह विश्लेषण करें कि कौनसा विकल्प बेहतर है:

  • इस्तेमाल का मकसद: Chrome एक्सटेंशन का इस्तेमाल, मुख्य रूप से ब्राउज़र की सुविधाओं को बेहतर बनाने के लिए किया जाता है. आम तौर पर, इसका इस्तेमाल इन कामों के लिए किया जाता है: बेहतर काम करने के लिए टूल, वेब पेज के कॉन्टेंट को बेहतर बनाना, और जानकारी इकट्ठा करना. वेब की पूरी क्षमता का इस्तेमाल करके, वेब ऐप्लिकेशन के इस्तेमाल के उदाहरणों की संख्या बहुत ज़्यादा हो सकती है.
  • उपयोगकर्ता अनुभव: आम तौर पर, Chrome एक्सटेंशन का यूज़र इंटरफ़ेस सीमित होता है. साथ ही, इन्हें ब्राउज़र के साथ इंटिग्रेट करने के लिए डिज़ाइन किया जाता है. वेब ऐप्लिकेशन का यूज़र इंटरफ़ेस, नेटिव ऐप्लिकेशन की तरह ही दिख सकता है और उसमें बहुत ज़्यादा बदलाव किए जा सकते हैं.
  • पोर्टेबिलिटी: Chrome एक्सटेंशन, Chrome के लिए ही उपलब्ध होते हैं. कुछ ब्राउज़र (जैसे, Firefox और Edge) में, Chrome के जैसे ही एक्सटेंशन एपीआई काम करते हैं. हालांकि, यह सुविधा सभी ब्राउज़र में उपलब्ध नहीं है. वेब ऐप्लिकेशन सभी ब्राउज़र पर काम करते हैं. हालांकि, ऐसा हो सकता है कि सभी एपीआई काम न करें.
  • उपलब्धता: Chrome एक्सटेंशन को इंस्टॉल करना ज़रूरी है. उदाहरण के लिए, Chrome Web Store से या खुद होस्ट करके. साथ ही, उन्हें ब्राउज़र टूलबार से ऐक्सेस किया जा सकता है. वेब ऐप्लिकेशन, यूआरएल की मदद से तुरंत लोड किए जा सकते हैं और सभी ब्राउज़र से ऐक्सेस किए जा सकते हैं. इन्हें इंस्टॉल करना ज़रूरी नहीं है.
  • सुविधाओं का सेट: Chrome एक्सटेंशन, Chrome API के ज़रिए Chrome के साथ पूरी तरह से इंटिग्रेट होते हैं. वेब ऐप्लिकेशन, लो-लेवल या सिस्टम-लेवल के टास्क में ज़्यादा सीमित हो सकते हैं. जैसा कि हमने बताया है, सिर्फ़ एक्सटेंशन के लिए उपलब्ध एपीआई का ऐक्सेस पाने के लिए, वेब ऐप्लिकेशन से एक्सटेंशन को कॉल किया जा सकता है.
  • बैकग्राउंड में काम करना: Chrome एक्सटेंशन, बैकग्राउंड में काम कर सकते हैं. साथ ही, ब्राउज़र विंडो बंद होने पर भी चल सकते हैं. दूसरी ओर, वेब ऐप्लिकेशन को आम तौर पर फ़ोरग्राउंड में चलाने के लिए डिज़ाइन किया जाता है. साथ ही, इनमें बैकग्राउंड में काम करने की सुविधाएं सीमित होती हैं. इनका इस्तेमाल, ज़्यादातर परफ़ॉर्मेंस और भरोसेमंदता के लिए किया जाता है.

माइग्रेट करने का तरीका

Chrome ऐप्लिकेशन को माइग्रेट करना

Chrome ऐप्लिकेशन से वेब ऐप्लिकेशन या Chrome एक्सटेंशन पर माइग्रेट करने के लिए, यह तरीका अपनाएं:

  1. अपने ऐप्लिकेशन की मुख्य सुविधाएं तय करें: कुछ मामलों में, आपके ऐप्लिकेशन से यह तय होगा कि आपको वेब ऐप्लिकेशन बनाना है या सिर्फ़ Chrome एक्सटेंशन बनाना है. अगर दोनों विकल्प आपकी ज़रूरतों के हिसाब से हैं, तो आपके पास अपनी पसंद का विकल्प चुनने का विकल्प होता है. हर टेक्नोलॉजी के फ़ायदों के बारे में ज़्यादा जानने के लिए, वेब की सुविधाओं की साइट और Chrome एक्सटेंशन एपीआई का रेफ़रंस देखें.
  2. जानें और बनाएं: टेक्नोलॉजी के बारे में जानने और अपना ऐप्लिकेशन बनाने के लिए, लर्निंग संसाधनों का इस्तेमाल करें. इनमें से किसी भी टेक्नोलॉजी का इस्तेमाल शुरू करने के लिए, PWA ट्रेनिंग और Chrome एक्सटेंशन का इस्तेमाल शुरू करने से जुड़ी गाइड बहुत काम की हैं.
  3. टेस्ट करना और डिस्ट्रिब्यूट करना: बड़े पैमाने पर रोल आउट करने से पहले, अपने नए ऐप्लिकेशन को कुछ उपयोगकर्ताओं को उपलब्ध कराएं. इससे यह पक्का किया जा सकेगा कि ऐप्लिकेशन सही तरीके से काम कर रहा है. वेब ऐप्लिकेशन को ज़्यादा से ज़्यादा लोगों तक पहुंचाने के लिए, उन्हें ब्राउज़र से ऐक्सेस और इंस्टॉल किया जा सकता है. आम तौर पर, Chrome एक्सटेंशन को Chrome Web Store या खुद होस्ट करके उपलब्ध कराया जाता है. मैनेज की जा रही स्थितियों में, एडमिन दोनों को ज़बरदस्ती इंस्टॉल कर सकते हैं.

अपने उपयोगकर्ताओं को माइग्रेट करना

Chrome ऐप्लिकेशन से माइग्रेट करने के लिए, आपने चाहे जो भी टेक्नोलॉजी चुनी हो, आपको अपने उपयोगकर्ताओं को मौजूदा ऐप्लिकेशन को अनइंस्टॉल करने के लिए कहना होगा. साथ ही, उन्हें नए अनुभव के बारे में बताना होगा.

हमारा सुझाव है कि आप अपने ऐप्लिकेशन को अपडेट करें, ताकि उसमें यह मैसेज शामिल किया जा सके कि ऐप्लिकेशन को बंद कर दिया गया है. साथ ही, उपयोगकर्ताओं को यह भी बताया जा सके कि अब उन्हें आपकी वेबसाइट या Chrome वेब स्टोर पर जाना चाहिए. इसके लिए, नीचे दिया गया उदाहरण देखें. आपके पास "अनइंस्टॉल करें" बटन भी शामिल करने का विकल्प है. यह बटन, uninstallSelf() तरीके को कॉल करता है.

Chrome 75 से, installReplacementWebApp() तरीके का इस्तेमाल, Chrome ऐप्लिकेशन में किया जा सकता है. यह तरीका, बटन पर क्लिक करने या उपयोगकर्ता के किसी अन्य जेस्चर के जवाब में इस्तेमाल किया जा सकता है. इससे, बदले गए वेब ऐप्लिकेशन के लिए इंस्टॉलेशन फ़्लो अपने-आप ट्रिगर हो जाता है.

Google Photos के Chrome ऐप्लिकेशन को बदलना

एक और बात यह है कि Chrome Enterprise ब्राउज़र और ChromeOS के एडमिन को अपने संगठनों के लिए, ऐप्लिकेशन की नीतियां अपडेट करने के बारे में बताना होगा. Enterprise और Education खाते के उपयोगकर्ताओं के लिए, मैनेजमेंट नीति के ज़रिए ऐप्लिकेशन और एक्सटेंशन को ज़बरदस्ती इंस्टॉल करना आम बात है. डेवलपर को एडमिन को यह बताना चाहिए कि वे अपनी ExtensionInstallForcelist नीति (Chrome ऐप्लिकेशन इंस्टॉल करने के लिए इस्तेमाल की जाती है) को अपडेट करें. साथ ही, उसे अपने वेब ऐप्लिकेशन के यूआरएल के साथ WebAppInstallForceList नीति से बदलें.

Admin console के एक्सटेंशन और वेब ऐप्लिकेशन को जबरन इंस्टॉल करने से जुड़ी नीति.

सहायता

अगर आपका कोई तकनीकी सवाल है, तो सहायता पाने के लिए यहां दिए गए संसाधनों का इस्तेमाल करें: