वेब ऐप्लिकेशन मेनिफ़ेस्ट आईडी प्रॉपर्टी की मदद से, PWA की खास पहचान करना

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

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

id प्रॉपर्टी क्या काम करती है?

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

ब्राउज़र समर्थन

अब Chrome 96 में id प्रॉपर्टी के लिए सहायता उपलब्ध है.

अगर मेरे पास कोई ऐसा ऐप्लिकेशन है जिसमें id नहीं है, तो मुझे क्या करना चाहिए?

आपको कुछ भी करने की ज़रूरत नहीं है और अगर आप अपने वेब ऐप्लिकेशन मेनिफ़ेस्ट में id न जोड़ें (जब तक कि start_url और मेनिफ़ेस्ट पाथ में कोई बदलाव नहीं होगा). आने वाले समय में आपके PWA को सुरक्षित रखने के लिए, आपके वेब ऐप्लिकेशन मेनिफ़ेस्ट के लिए id प्रॉपर्टी.

मैं अपना id कैसे तय और सेट करूं?

PWA के लिए id तय करने का सबसे सुरक्षित और सबसे सटीक तरीका वह वैल्यू देखें जो Chrome ने कैलकुलेट की है.

  1. Chrome 96 या उसके बाद के वर्शन का इस्तेमाल करके, DevTools में ऐप्लिकेशन पैनल का मेनिफ़ेस्ट पैनल.
  2. ऐप्लिकेशन आईडी प्रॉपर्टी के बगल में मौजूद (!) आइकॉन पर कर्सर घुमाएं. कॉन्टेंट बनाने (!) टूलटिप आइकॉन सिर्फ़ तब दिखेगा, जब id को वेब ऐप्लिकेशन मेनिफ़ेस्ट फ़ाइल डाउनलोड होगी.
  3. टूल टिप में दिखाई गई id वैल्यू को नोट करें (नीचे स्क्रीनशॉट देखें).
  4. वेब ऐप्लिकेशन मेनिफ़ेस्ट में id प्रॉपर्टी को जोड़ने के लिए, यहां दिखाई गई id वैल्यू का इस्तेमाल करें टूलटिप.

'id' दिखाने वाला टूलटिप वैल्यू.

{
  ...
  id: "/?homescreen=1",
  start_url: "/?homescreen=1",
  ...
}

अगर मैं id सेट नहीं करूं, तो क्या होगा?

चिंता न करें, कुछ भी नहीं बिगड़ेगा. Chrome 96 की शुरुआत में, अगर मेनिफ़ेस्ट में कोई भी फ़ाइल नहीं है, तो ब्राउज़र id जनरेट करेगा जो वेब ऐप्लिकेशन मेनिफ़ेस्ट में मौजूद start_url के हिसाब से तय होता है.

वेब ऐप्लिकेशन मेनिफ़ेस्ट में id जोड़ने से काम पूरा हो जाता है start_url और मेनिफ़ेस्ट पाथ को बदलने के लिए ऑरिजिन में कोई बदलाव नहीं होता है!), क्योंकि ब्राउज़र को start_url के बजाय, तय किए गए id के आधार पर PWA की पहचान करें या मेनिफ़ेस्ट पाथ.

मैं इसकी जांच कैसे करूं?

व्यवहार की जांच करने के लिए, फ़ॉलो करें यह तरीका अपनाएं:

  1. PWA इंस्टॉल करें.
  2. about://web-app-internals/ खोलकर unhashed_app_id देखें और इंस्टॉल किए गए PWA के लिए start_url प्रॉपर्टी.
  3. अपने वेब ऐप्लिकेशन मेनिफ़ेस्ट में id प्रॉपर्टी जोड़ने के लिए यह तरीका अपनाएं ऊपर मैं अपना id कैसे तय और सेट करूं.
  4. chrome://restart का इस्तेमाल करके ब्राउज़र रीस्टार्ट करें. इसके बाद, पीडब्ल्यूए लॉन्च करें about://apps के बाद, मेनिफ़ेस्ट फ़ाइल को ज़बरदस्ती रीफ़्रेश करने के लिए, PWA को बंद करें.
  5. about://web-app-internals/ खोलें और इसके लिए manifest_id प्रॉपर्टी देखें इंस्टॉल किया गया PWA भी बदल दिया गया है.
  6. वेब ऐप्लिकेशन मेनिफ़ेस्ट में जाकर start_url को बदलें.
  7. chrome://restart का इस्तेमाल करके ब्राउज़र रीस्टार्ट करें. इसके बाद, पीडब्ल्यूए लॉन्च करें about://apps के बाद, मेनिफ़ेस्ट फ़ाइल को ज़बरदस्ती रीफ़्रेश करने के लिए, PWA को बंद करें.
  8. about://web-app-internals/ खोलें और इसके लिए start_url प्रॉपर्टी देखें इंस्टॉल किया गया PWA, ताकि यह पुष्टि की जा सके कि उसे सही तरीके से अपडेट किया गया है.

अन्य संसाधन