हमने जुलाई में एक नई ब्लॉग सीरीज़ लॉन्च की थी, ताकि हम आपको एक्सटेंशन से जुड़ी नई जानकारी देते रहें. आपके अहम सुझावों और WebExtensions कम्यूनिटी ग्रुप में ब्राउज़र वेंडर के साथ मिलकर काम करने की वजह से, हम एक्सटेंशन एपीआई को बेहतर बना रहे हैं. साथ ही, हम सभी ब्राउज़र पर एक जैसी सुविधाएं देने की दिशा में काम कर रहे हैं.
अक्टूबर के अंक में आपका स्वागत है! इस पोस्ट में, हम उन बदलावों के बारे में जानेंगे जिन्हें Chrome एक्सटेंशन टीम ने पिछले कुछ महीनों में किया है. साथ ही, इस साल के आखिर में लॉन्च होने वाली कुछ नई सुविधाओं के बारे में भी बताएंगे. आइए, शुरू करें!
एक्सटेंशन के नए एपीआई और सुविधाएं
इस सेक्शन में, हम एपीआई के कुछ अहम लॉन्च शेयर करते हैं. साथ ही, एपीआई में किए गए अन्य सुधारों की खास जानकारी देते हैं और आने वाली रिलीज़ के बारे में बताते हैं. फ़िलहाल, सभी लॉन्च नए बीटा वर्शन में उपलब्ध हैं. ज़्यादा जानकारी के लिए, Chromium रिलीज़ का शेड्यूल देखें.
हाइलाइट
पहले से मालूम समस्याएं हल की गई हैं
एक्सटेंशन टीम, मेनिफ़ेस्ट V3 की स्थिरता से जुड़ी समस्याओं को हल करने के लिए लगातार काम कर रही है. Chrome 116 में कई सुधार लॉन्च किए गए. इनकी मदद से, हम मेनिफ़ेस्ट V2 और V3 के बीच सुविधाओं के अंतर को कम करने में काफ़ी आगे बढ़ पाए. Chrome 120 में, हम प्लैटफ़ॉर्म से जुड़ी उन सभी समस्याओं को ठीक कर देंगे जिन्हें प्राथमिकता दी गई है. साथ ही, जानी-पहचानी समस्याओं वाले पेज पर मौजूद सभी गंभीर गड़बड़ियों को ठीक कर देंगे. फ़िलहाल, Chrome 120 Canary में सभी सुविधाएं उपलब्ध हैं. हालांकि, ChromeOS Lacros के लिए fileHandler की सहायता और userScripts API इस महीने के आखिर में उपलब्ध होगा. ज़्यादा जानकारी के लिए, पहचानी गई समस्याओं का अपडेट किया गया पेज देखें.
Service Worker की परफ़ॉर्मेंस को बेहतर बनाया गया
सेवा वर्कर से जुड़ी, ऐप्लिकेशन के हैंग या क्रैश होने से जुड़ी समस्याएं हल कर दी गई हैं. Chrome 116 में, हमने एक्सटेंशन एपीआई में 'कंटिन्यूअल कनेक्टिविटी' सुविधा जोड़ी है. यह सुविधा, उपयोगकर्ता को प्रॉम्प्ट दिखाती है. साथ ही, हमने वेबसोकेट के लिए बेहतर सहायता भी जोड़ी है. एक्सटेंशन में वेबसोकेट का इस्तेमाल करना ट्यूटोरियल देखें. Chrome 118 और उसके बाद के वर्शन में, सक्रिय डीबगर एपीआई सेशन के दौरान, कोई सेवा वर्कर चालू रहेगा.
ज़्यादा जानकारी के लिए, Service Worker से जुड़ी हमारी अपडेट की गई गाइड देखें. अगर आपके उपयोगकर्ताओं को Chrome के 119 वर्शन के बाद भी, सेवा वर्कर से जुड़ी स्थिरता से जुड़ी समस्याएं आती हैं, तो कृपया हमें बताएं.
बेहतर सुरक्षा
पहले, tabs.update()
, tabs.create
, और windows.create()
का इस्तेमाल करके कुछ chrome://
यूआरएल पर नेविगेट करने पर, गड़बड़ी का मैसेज दिखता था या Chrome क्रैश हो जाता था. साथ ही, tabs.update()
JavaScript यूआरएल नहीं खोल सका. Chrome 117 में, हमने काम करने वाले chrome://
यूआरएल की संख्या बढ़ा दी है. साथ ही, JavaScript यूआरएल ब्लॉकिंग की सुविधा अब एक्सटेंशन एपीआई के सभी तरीकों पर भी लागू होती है.
Chrome 117 में, उपयोगकर्ताओं को Chrome एक्सटेंशन पेज पर सूचनाएं मिलेंगी. ऐसा तब होगा, जब वे कोई ऐसा एक्सटेंशन इंस्टॉल कर लें जो अब Chrome Web Store पर उपलब्ध न हो. ऐसा तब हो सकता है, जब डेवलपर ऐक्सटेंशन को अनपब्लिश कर दे, नीति के उल्लंघन की वजह से उसे हटा दिया जाए या उसे मैलवेयर के तौर पर पहचाना जाए. ज़्यादा जानकारी के लिए, chrome://extensions पेज पर सुरक्षा जांच की सुविधा जोड़ना लेख पढ़ें.
Chrome 118 में, एक्सटेंशन को chrome.tabs
और chrome.windows
एपीआई का इस्तेमाल करके file://
यूआरएल पर नेविगेट करने की अनुमति नहीं होगी. ऐसा तब तक होगा, जब तक एक्सटेंशन की जानकारी वाले पेज पर “फ़ाइल के यूआरएल को ऐक्सेस करने की अनुमति दें” विकल्प चालू नहीं किया जाता. WECG की चर्चा देखें.
लॉन्च किए गए अन्य एपीआई
- रनटाइम एपीआई: Chrome 116 से, चालू कॉन्टेक्स्ट की जानकारी पाने के लिए
runtime.getContexts()
का इस्तेमाल किया जा सकता है. उदाहरण के लिए, यह देखा जा सकता है कि ऑफ़स्क्रीन कोई दस्तावेज़ चालू है या नहीं. - साइड पैनल एपीआई Chrome 116 में, उपयोगकर्ता के जेस्चर के जवाब में, प्रोग्राम के हिसाब से एक्सटेंशन का साइड पैनल खोलने के लिए,
sidepanel.open()
का इस्तेमाल किया जा सकता है. जैसे, संदर्भ मेन्यू पर क्लिक करना. - TabCapture API में, एक्सटेंशन के सेवा वर्कर से
getMediaStreamId()
को कॉल करने और Chrome 116 में, ऑफ़स्क्रीन दस्तावेज़ में स्ट्रीम आईडी सेMediaStream
ऑब्जेक्ट पाने की सुविधा जोड़ी गई है. उदाहरणों के लिए, ऑडियो रिकॉर्डिंग और स्क्रीन कैप्चर देखें. - DeclarativeNetRequest API: Chrome 118 में,
isUrlFilterCaseSensitive
प्रॉपर्टी की डिफ़ॉल्ट वैल्यू कोfalse
में बदल दिया गया था.
शीघ्र आ रहा है...
हमारा प्लान है कि Chrome 120 के रिलीज़ होने के साथ ही, आम तौर पर होने वाली समस्याओं वाले पेज पर मौजूद बाकी सभी समस्याओं को ठीक कर दिया जाए. इसके अलावा, हम ये सुविधाएं भी जोड़ने वाले हैं:
- UserScripts API की मदद से, उपयोगकर्ता स्क्रिप्ट मैनेजर यह तय कर पाएंगे कि वेब पेजों में उपयोगकर्ता स्क्रिप्ट का कलेक्शन कब और कैसे इंजेक्ट किया जाए. ज़्यादा जानकारी के लिए, WECG का प्रस्ताव देखें.
- ReadingList API की मदद से, डेवलपर साइड पैनल के रीडिंग लिस्ट पैनल में मौजूद मेटाडेटा को बना पाएंगे, पढ़ पाएंगे, अपडेट कर पाएंगे, और मिटा पाएंगे. इस बारे में जानने के लिए, Chrome के एक्सटेंशन में नया क्या है देखें.
- वेब एक्सटेंशन कम्यूनिटी ग्रुप में मिले सुझाव/राय के आधार पर, हम चालू किए गए स्टैटिक नियमों की संख्या को 10 से बढ़ाकर 50 कर रहे हैं. इसके अलावा, हम स्टैटिक नियमों की कुल संख्या को 50 से बढ़ाकर 100 कर रहे हैं. फ़िलहाल, यह सुविधा Canary में उपलब्ध है.
- फ़ाइल मैनेज करने वाला एपीआई: यह ChromeOS 120 से ChromeOS एक्सटेंशन के लिए उपलब्ध होगा. इसकी मदद से, एक्सटेंशन वेब प्लैटफ़ॉर्म पर फ़ाइल मैनेज करने की तरह ही, तय किए गए एमआईएम टाइप और फ़ाइल एक्सटेंशन वाली फ़ाइलें खोल सकते हैं.
- एक्सटेंशन,
userVisibleOnly
कोfalse
पर सेट करके, उपयोगकर्ता को दिखने वाली सूचना दिखाए बिना,self.registration.pushManager.subscribe()
के ज़रिए वेब Push API का इस्तेमाल कर पाएंगे. इससे, असाइनोक्रोनस क्लाइंट-सर्वर कम्यूनिकेशन के लिए, सेवा वर्कर (MV3) में वेबसोकेट के मुकाबले पुश नोटिफ़िकेशन का इस्तेमाल करना ज़्यादा आसान हो जाएगा. ज़्यादा जानकारी के लिए, Chromium में मौजूद गड़बड़ी और WECG की चर्चा देखें.
Chrome Beta में ये सुविधाएं उपलब्ध होने पर, उनके बारे में सूचनाएं पाने के लिए एक्सटेंशन में नया क्या है पेज पर बने रहें.
दस्तावेज़ों को अपग्रेड करना
हम अपने दस्तावेज़ों को बेहतर बना रहे हैं और उनमें नई जानकारी जोड़ रहे हैं. कृपया chromium-group पर सवाल पूछना जारी रखें और दस्तावेज़ से जुड़ी समस्याओं की शिकायत करें.
हाइलाइट
- हमने सैंपल के लैंडिंग पेज को बेहतर बनाया है. अब एपीआई, अनुमति, और टाइप के हिसाब से फ़िल्टर किया जा सकता है. इससे, खास सैंपल ढूंढना आसान हो जाता है. इस सुविधा को बेहतर बनाने के लिए, हमने Summer of Code प्रोग्राम के इंटर्न, ज़ुएज़हौ डै के साथ मिलकर काम किया. इस ब्लॉग पोस्ट में उनके अनुभव के बारे में पढ़ें.
- Chrome Web Store के साथ अपने Google Analytics खाते का इस्तेमाल करना लेख में, Chrome Web Store की लिस्टिंग के लिए Google Analytics 4 देखने का तरीका बताया गया है. इस लेख में, डेवलपर डैशबोर्ड से मिले डेटा के बारे में भी बताया गया है. इस गाइड में, Google Analytics में ऑप्ट इन करने, विज्ञापन की परफ़ॉर्मेंस को मॉनिटर करने, कन्वर्ज़न को ट्रैक करने, और अन्य खातों को Google Analytics डेटा का ऐक्सेस देने का तरीका बताया गया है.
- हमने Chrome एक्सटेंशन में कुकी और वेब स्टोरेज एपीआई के काम करने के तरीके के बारे में एक नई गाइड पब्लिश की है. इसमें, एक्सटेंशन डेवलपर के तौर पर Privacy Sandbox के बारे में आपको ज़रूरी जानकारी मिलती है.
- हमने आपके एक्सटेंशन प्रोजेक्ट में टेस्टिंग को इंटिग्रेट करने के तरीके के बारे में नए लेख लॉन्च किए हैं: Chrome एक्सटेंशन की यूनिट टेस्टिंग और एक्सटेंशन के लिए एंड-टू-एंड टेस्टिंग. इन लेखों में, कई लोकप्रिय फ़्रेमवर्क के लिए सामान्य दिशा-निर्देश और सबसे सही तरीके शामिल हैं. ज़्यादा जानकारी के लिए, Puppeteer की मदद से Chrome एक्सटेंशन की जांच करना लेख पढ़ें.
इस बारे में और अपडेट
- हमने Declarative Net Request API के दिशा-निर्देशों को इस तरह से फिर से लिखा है कि नियमों के डेक्लेरेशन वाले सेट को लागू करने का तरीका साफ़ तौर पर समझ में आए.
- हमने रिमोट तरीके से होस्ट किए गए कोड को मेनिफ़ेस्ट V3 पर माइग्रेट करने के लिए, ज़्यादा दिशा-निर्देश जोड़े हैं. साथ ही, रिलीज़ के दौरान समस्याओं से बचने के लिए, हम मेनिफ़ेस्ट V3 एक्सटेंशन को चरणों में पब्लिश करने की रणनीतियां देते हैं.
- अपने एक्सटेंशन के सेवा वर्कर में WebSocket से कनेक्ट करने का तरीका जानें.
- हमने सहायता पाएं गाइड को बड़ा किया है. इसमें, गड़बड़ी की शिकायत करने, मौजूदा समस्याओं पर नज़र रखने, नई सुविधाओं का अनुरोध करने वगैरह के बारे में ज़्यादा जानकारी देने वाले निर्देश शामिल किए गए हैं.
शीघ्र आ रहा है...
- User Scripts API का रेफ़रंस और ट्यूटोरियल.
- Firebase ट्यूटोरियल और सैंपल.
- ReadingList API का रेफ़रंस.
Chrome Web Store को फिर से डिज़ाइन किया जा रहा है 🌈
इस महीने की शुरुआत में, हमने Google I/O में बताया था कि Chrome Web Store को नए सिरे से तैयार किया जा रहा है. साथ ही, हमने इसकी झलक भी दिखाई थी. इसे खुद आज़माएं! https://chromewebstore.google.com/. कुछ अहम बदलावों के बारे में यहां बताया गया है:
- कैटगरी की सूची को 11 से बढ़ाकर, तीन में सेवेंटीन कैटगरी ग्रुप की नई सूची में किया गया.
- खोज में ऑटोकंप्लीट की सुविधा को बेहतर बनाया गया है.
- स्क्रीनशॉट अब काफ़ी बेहतर क्वालिटी में दिखाए जा रहे हैं. अगर आपने अब तक ऐसा नहीं किया है, तो 1280x800 पिक्सल वाले स्क्रीनशॉट अपलोड किए जा सकते हैं.
- सहायता टैब पर सवालों के जवाबों में अब नई लाइन दिखती है.
- उपयोगकर्ताओं की समीक्षाओं और सहायता से जुड़े सवालों के जवाब देते समय, अब आपके जवाब में आपके नाम के बगल में “डेवलपर” बैज दिखेगा.
- स्टोर आइटम के यूआरएल के आखिर में "/reviews" जोड़कर, लोगों को समीक्षाओं वाले पेज का सीधा लिंक दिया जा सकता है. उदाहरण के लिए:
https://chromewebstore.google.com/detail/_EXTENSION_ID_/reviews
.
chromium-google ग्रुप पर अब तक सभी लोगों के सुझाव, राय या शिकायत देने के लिए धन्यवाद. बेझिझक इस चर्चा में शामिल हों या सुझाव/राय दें या शिकायत करें मेन्यू आइटम का इस्तेमाल करके, सीधे CWS टीम को अपना सुझाव/राय दें या शिकायत करें:
इसके अलावा, खुद को नामांकित करने के लिए फ़ॉर्म सबमिट करके, संपादकों की पसंद के कलेक्शन में अपने वीडियो को दिखाया जा सकता है. डेवलपर डैशबोर्ड में भी जल्द ही सुधार किए जाएंगे. इनके बारे में जानने के लिए, हमारे साथ बने रहें!
💡 क्या आपको पता है?
- Chrome एक्सटेंशन को डीबग करने के बारे में एक नया वीडियो अपलोड किया गया है. इसमें कई ऐसे विषय शामिल हैं जिनके बारे में आपको पहले से पता हो सकता है. हालांकि, इसमें एक्सटेंशन में DevTools का इस्तेमाल करने के लिए कुछ बेहतरीन तरकीबें भी बताई गई हैं.
- अब आपको हर एक्सटेंशन के लिए निजता नीति देनी होगी. पहले, हर डेवलपर खाते के लिए सिर्फ़ एक निजता नीति जोड़ी जा सकती थी. हालांकि, अगर आपके पास एक डेवलपर खाते के तहत कुछ एक्सटेंशन थे, तो यह समस्या पैदा हो सकती थी. यह नया इंटरफ़ेस, डेवलपर डैशबोर्ड में आपके आइटम के निजता टैब में उपलब्ध है. इसका मतलब है कि खाता-लेवल की निजता नीतियां अब काम नहीं करेंगी.
हम आपसे संपर्क करेंगे 🙌
हम एक्सटेंशन डेवलपर कम्यूनिटी से लगातार संपर्क में हैं. इसके लिए, हम 1:1 बातचीत करते हैं, नए प्रोग्राम लॉन्च करते हैं, और समिट में हिस्सा लेते हैं. यहां कुछ हाइलाइट दी गई हैं:
- Google Developer Experts program के एक्सटेंशन को अगस्त में लॉन्च किया गया था. दुनिया भर में, Chrome एक्सटेंशन पर फ़ोकस करने वाले हमारे 12 से ज़्यादा नए GDE हैं. वे हमें बेहतर सुझाव और राय देते हैं. यह प्रोग्राम के लिए बहुत ही रोमांचक समय है!
- हमने वेब एक्सटेंशन कम्यूनिटी ग्रुप के हिस्से के तौर पर, TPAC (W3C का सालाना कॉन्फ़्रेंस) में हिस्सा लिया. साथ ही, हमने कम्यूनिटी के कई सदस्यों के साथ-साथ Firefox और Safari के प्रतिनिधियों से मुलाकात की. हमने कई विषयों पर काफ़ी काम किया है. जैसे, एक्सटेंशन एपीआई को ज़्यादा बेहतर बनाने, स्पेसिफ़िकेशन पर काम करने, और नया टेस्टिंग सुइट बनाने के लिए वेब प्लैटफ़ॉर्म टेस्ट को बेहतर बनाने पर काम किया है. WECG रिपॉज़िटरी में, मीटिंग के पूरे मिनट पढ़ें.
- पिछले हफ़्ते, एक्सटेंशन टीम ने अम्स्टर्डम में विज्ञापन फ़िल्टर करने वाले डेवलपर समिट में हिस्सा लिया. वे आप में से कई लोगों से, कॉफी चैट के दौरान मिले थे. यह चैट, समिट के हफ़्ते से पहले और शुक्रवार को ऑफ़िस के खुले दरवाज़े वाले कार्यक्रम के दौरान होस्ट की गई थी.
भले ही, आप इनमें से किसी भी इवेंट में शामिल न हो पाए हों, लेकिन chromium-extensions Google ग्रुप पर सवाल पूछकर, WECG पर ब्राउज़र पार्टनर की चर्चाओं को फ़ॉलो करके, और दस्तावेज़ से जुड़ी किसी भी समस्या की शिकायत करके, इनमें शामिल रहा जा सकता है.
एक्सटेंशन डेवलपर कम्यूनिटी का हिस्सा बने रहने के लिए धन्यवाद!