मेनिफ़ेस्ट V2 एक्सटेंशन को मेनिफ़ेस्ट V3 एक्सटेंशन में बदलने की गाइड.
इस सेक्शन की मदद से, किसी एक्सटेंशन को मेनिफ़ेस्ट V2 से, Chrome एक्सटेंशन प्लैटफ़ॉर्म के सबसे नए वर्शन, Manifest V3 में अपग्रेड किया जा सकता है. माइग्रेशन से जुड़े डेटा को इन कैटगरी में बांटा गया है. आपके काम को ट्रैक करने में आपकी मदद करने के लिए, हमने इन दस्तावेज़ों के कॉन्टेंट के बारे में खास जानकारी देने वाली एक चेकलिस्ट दी है. चेकलिस्ट की मदद से या कॉन्टेंट के बारे में ज़्यादा जानें. दोनों पाथ अपग्रेड किए गए एक्सटेंशन पर खत्म होते हैं.
- मेनिफ़ेस्ट अपडेट करें—
manifest.json
खास तौर पर V3 के लिए होना चाहिए. इस सेक्शन में, उन बदलावों के बारे में बताया गया है जो खुद ही लागू किए जा सकते हैं. कोड से जुड़े मेनिफ़ेस्ट में हुए बदलावों के बारे में उन कोड बदलावों के साथ बताया गया है जो उनके साथ काम करते हैं. - सर्विस वर्कर पर माइग्रेट करना—कोई सर्विस वर्कर, एक्सटेंशन के बैकग्राउंड या इवेंट पेज को बदल देता है, ताकि बैकग्राउंड कोड मुख्य थ्रेड से बाहर रहे, जहां परफ़ॉर्मेंस को नुकसान पहुंच सकता है. इस बदलाव के लिए डीओएम, विंडो, और कुछ एक्सटेंशन एपीआई कॉल को ऑफ़स्क्रीन दस्तावेज़ों में ले जाना भी ज़रूरी है.
- अपडेट एपीआई कॉल—कुछ एपीआई कॉल को मिलते-जुलते ऐप्लिकेशन से बदलने की ज़रूरत है.
- वेब अनुरोध सुनने वालों को ब्लॉक करने वाले विकल्प को बदलें—मेनिफ़ेस्ट वर्शन 2 में, नेटवर्क अनुरोधों को ब्लॉक करने या उनमें बदलाव करने से परफ़ॉर्मेंस पर असर पड़ सकता है. साथ ही, उपयोगकर्ताओं के संवेदनशील डेटा का बहुत ज़्यादा ऐक्सेस ज़रूरी हो सकता है. डिक्लेरेटिव नेट अनुरोध एपीआई, एक्सटेंशन को कम अनुमतियों के साथ और परफ़ॉर्मेंस में रुकावट डाले बिना, वेब कॉन्टेंट को ब्लॉक करने या उसमें बदलाव करने की अनुमति देता है.
- एक्सटेंशन की सुरक्षा को बेहतर बनाएं—मेनिफ़ेस्ट V3, एक्सटेंशन की सुरक्षा को कई तरीकों से बेहतर बनाता है. कॉन्टेंट की बेहतर सुरक्षा नीति के अलावा, रिमोट तरीके से होस्ट किए गए कोड और आर्बिट्रेरी स्ट्रिंग के इस्तेमाल के लिए सहायता हटा दी जाती है.
- अपने एक्सटेंशन को पब्लिश करना—इस सेक्शन में, अलग-अलग चरणों में रोल आउट करने का तरीका बताया गया है, ताकि यह पक्का किया जा सके कि आपका मेनिफ़ेस्ट V3 एक्सटेंशन उम्मीद के मुताबिक काम करे. इसके लिए, पहले उसे सीमित ऑडियंस के साथ टेस्ट करना होगा.
हमारे पास एक एक्सटेंशन मेनिफ़ेस्ट कन्वर्टर भी है. यह आपके लिए सबकुछ नहीं करता है, लेकिन यह आपको शुरू कर देगा. कन्वर्टर के README से पता चलता है कि टूल में क्या बदलाव होता है.
मौजूदा सुविधाओं का इस्तेमाल जारी रखें
हमारा सुझाव है कि माइग्रेशन के दौरान नई सुविधाएं न जोड़ें, ताकि अचानक होने वाली समस्याओं या गड़बड़ियों की संभावना कम हो सके. उदाहरण के लिए, किसी ऐसी सुविधा को जोड़ने से अनुमति की चेतावनी मिल सकती है, जिसके लिए नई अनुमतियों की ज़रूरत होती है. अगर उपयोगकर्ता नई अनुमतियों को स्वीकार नहीं करता है, तो आपका एक्सटेंशन बंद रहेगा. चेतावनी दिखाए बिना अनुमतियां जोड़ने के दूसरे तरीके जानने के लिए, अनुमतियों की चेतावनी देने के सबसे सही तरीके देखें.
मेनिफ़ेस्ट V3, आम तौर पर Chrome 88 या इसके बाद के वर्शन पर काम करता है. एपीआई कॉल अपडेट करते समय, हो सकता है कि बदले में मिलने वाली सुविधाएं, Chrome के वर्शन 88 के बाद तक उपलब्ध न हों. एपीआई के रेफ़रंस पेजों पर, एपीआई के अलग-अलग सदस्यों से जुड़ी सहायता से जुड़ी जानकारी मौजूद होती है. अगर आपको इनमें से किसी सुविधा की ज़रूरत पड़ती है, तो मेनिफ़ेस्ट फ़ाइल में Chrome का कम से कम वर्शन सेट किया जा सकता है.
नई एक्सटेंशन प्लैटफ़ॉर्म सुविधाएं
मेनिफ़ेस्ट V3 रिलीज़ होने के बाद से, हमने इसमें नई सुविधाएं जोड़ना जारी रखा है. इनमें से कई सुविधाएं, मेनिफ़ेस्ट V2 और मेनिफ़ेस्ट V3, दोनों में इस्तेमाल की जा सकती हैं. आपको पुराने वर्शन का इस्तेमाल करते समय, उपयोगकर्ताओं को उनका इस्तेमाल करने की ज़रूरत नहीं है. हालांकि, जब वे पुरानी सुविधाओं को बदलेंगी, तो उनकी जगह इस्तेमाल की जाने वाली सुविधाओं को प्राथमिकता दें. साथ ही, आपको उम्मीद है कि बदली गई सुविधाएं धीरे-धीरे काम नहीं करेंगी और उन्हें हटा दिया जाएगा.