macOS पर वेब ऐप्लिकेशन के लिए, नेटिव सूचना एट्रिब्यूशन

Marijn Kruisselbrink
Marijn Kruisselbrink
Dan Murphy
Dan Murphy

पब्लिश की गई तारीख: 16 जुलाई, 2026

Chrome के वर्शन 152 से, macOS पर इंस्टॉल किए गए प्रोग्रेसिव वेब ऐप्लिकेशन (पीडब्ल्यूए) की सूचनाएं, Google Chrome के बजाय सीधे पीडब्ल्यूए से जुड़ी होंगी.

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

क्या बदल रहा है?

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

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

फ़ायदे:

  • ब्रैंड की पहचान: macOS के सूचना केंद्र और बैनर में, सूचनाओं में पीडब्ल्यूए का नाम और आइकॉन दिखता है.
  • उपयोगकर्ताओं के लिए जाने-पहचाने कंट्रोल: इन ऐप्लिकेशन के लिए, सूचनाओं से जुड़े कंट्रोल अब ठीक उसी जगह दिखते हैं जहां उपयोगकर्ता उन्हें ढूंढते हैं. ये कंट्रोल, macOS की सिस्टम सेटिंग में दिखते हैं, न कि Chrome में.
  • विस्तृत कंट्रोल: उपयोगकर्ता, अलग-अलग पीडब्ल्यूए ऐप की सूचना सेटिंग को मैनेज कर सकते हैं. जैसे, अलर्ट के स्टाइल, लॉक स्क्रीन पर सूचनाएं दिखने का तरीका.
  • फ़ोकस मोड: macOS की फ़ोकस प्रोफ़ाइल (परेशान न करें) में, पीडब्ल्यूए को अलग-अलग तौर पर अनुमति दी जा सकती है या उन्हें म्यूट किया जा सकता है.
'Google Chrome' को Chrome आइकॉन के साथ एट्रिब्यूट किया गया है.
पहले: सूचनाएं "Google Chrome" से जुड़ी होती थीं और उनमें Chrome का आइकॉन दिखता था.
'PWA का नाम' के तौर पर एट्रिब्यूट किया गया है. इसमें PWA का कस्टम आइकॉन शामिल है.
अब: सूचनाएं "पीडब्ल्यूए का नाम" से जुड़ी होंगी और उनमें पीडब्ल्यूए का कस्टम आइकॉन दिखेगा.

अनुमति देने की नई प्रोसेस

macOS अब पीडब्ल्यूए को एक अलग ऐप्लिकेशन के तौर पर मानता है. इसलिए, पीडब्ल्यूए को सूचनाएं दिखाने के लिए, ओएस लेवल पर सूचना की अनुमति लेनी होगी. इससे, नए और मौजूदा, दोनों तरह के उपयोगकर्ताओं के लिए अनुमति देने की प्रोसेस बदल जाएगी.

नए उपयोगकर्ता (पहली बार अनुमति का अनुरोध करने पर)

अगर कोई उपयोगकर्ता पीडब्ल्यूए इंस्टॉल करता है और साइट, इंस्टॉल करने के बाद सूचना की अनुमति का अनुरोध करती है, तो:

  1. Chrome, ब्राउज़र लेवल पर अनुमति का प्रॉम्प्ट नहीं दिखाएगा (पता बार से दिखने वाला ड्रॉप-डाउन).
  2. Chrome, पीडब्ल्यूए के लिए macOS के सिस्टम में अनुमति का प्रॉम्प्ट तुरंत ट्रिगर करेगा.
macOS सिस्टम की अनुमति वाला डायलॉग: PWA का नाम आपको सूचनाएं भेजना चाहता है. सूचनाओं में अलर्ट, आवाज़ें, और आइकॉन बैज शामिल हो सकते हैं. साथ ही, इनमें अनुमति न दें और अनुमति दें बटन भी शामिल हो सकते हैं.
इंस्टॉल किए गए पीडब्ल्यूए के लिए, macOS के सिस्टम में अनुमति का डायलॉग.
PWA की अनुमति पाने की प्रोसेस दिखाने वाला फ़्लोचार्ट. यह 'PWA Requests Permission' से शुरू होता है और 'Installed?' पर खत्म होता है. अगर 'हां' पर सेट है, तो Chrome का अनुरोध नहीं दिखेगा. इसके बजाय, macOS सिस्टम का अनुरोध दिखेगा. 'नहीं' होने पर, Chrome ब्राउज़र का प्रॉम्प्ट दिखता है. उपयोगकर्ता PWA इंस्टॉल करता है. इसके बाद, macOS सिस्टम का प्रॉम्प्ट दिखता है.
पीडब्ल्यूए को सूचनाएं भेजने की अनुमति देने की प्रोसेस का फ़्लोचार्ट.

मौजूदा उपयोगकर्ता (माइग्रेशन पाथ)

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

इस बदलाव को आसान बनाने के लिए:

  1. जब पीडब्ल्यूए पहली बार सूचना भेजने की कोशिश करेगा, तो macOS, सिस्टम में अनुमति का प्रॉम्प्ट दिखाएगा.
  2. अगर उपयोगकर्ता अनुमति देता है, तो सूचनाएं बिना किसी समस्या के मिलती रहेंगी.
  3. अगर उपयोगकर्ता इस प्रॉम्प्ट को अनदेखा करता है या बंद कर देता है, तो पीडब्ल्यूए ऐप्लिकेशन में एक इंडिकेटर दिखाएगा. यह इंडिकेटर, आम तौर पर ऐप्लिकेशन के टाइटल बार या मेन्यू में दिखता है. इसकी मदद से, उपयोगकर्ता macOS की सिस्टम सेटिंग में जाकर, मैन्युअल तरीके से अनुमतियां चालू कर सकते हैं.
इंस्टॉल किए गए PWA के लिए प्रॉम्प्ट, जिसमें उपयोगकर्ता को यह बताया जाता है कि Mac की System Settings में, सूचनाएं पाने की सुविधा बंद है. साथ ही, वहां जाने के लिए एक बटन भी दिया जाता है.
पीडब्ल्यूए में दिखने वाला इन-ऐप्लिकेशन प्रॉम्प्ट, जो उपयोगकर्ता को macOS की सिस्टम सेटिंग पर ले जाता है.
ऐप्लिकेशन की सेटिंग में, सूचनाएं पाने की सुविधा चालू या बंद करने का विकल्प होता है. साथ ही, सूचनाएं पाने की सुविधा चालू करने के लिए, सिस्टम सेटिंग पर एक पॉइंटर होता है.
Chrome में ऐप्लिकेशन की सेटिंग. इसमें, macOS की सिस्टम सेटिंग खोलने के लिए एक इंडिकेटर दिखता है.
इस प्रॉम्प्ट में, ब्राउज़र में मौजूद ऐप्लिकेशन के ज़रिए उपयोगकर्ता को यह सूचना दी जाती है कि Mac की System Settings में, Chrome ऐप्लिकेशन से सूचनाएं पाने की सुविधा बंद है. साथ ही, इसमें System Settings पर जाने के लिए एक बटन भी दिया जाता है.
ब्राउज़र में दिखने वाला प्रॉम्प्ट, जो उपयोगकर्ता को macOS की सिस्टम सेटिंग पर ले जाता है.

डेवलपर पर होने वाला असर: macOS पर requireInteraction की सुविधा बंद होना

macOS में, यह उपयोगकर्ता के कंट्रोल में रहने वाली, हर ऐप्लिकेशन के लिए अलग-अलग सेटिंग होती है. इसकी मदद से, यह तय किया जा सकता है कि कोई सूचना, स्क्रीन पर तब तक दिखे, जब तक उपयोगकर्ता उसे बंद न करे ("परमानेंट") या वह अपने-आप गायब हो जाए ("टेंपररी"). यह सेटिंग, macOS की सिस्टम सेटिंग में मौजूद होती है.

ओएस के इस डिज़ाइन की वजह से, Chrome, macOS पर सूचनाएं भेजने के लिए बने एपीआई में, requireInteraction विकल्प को अब नहीं मानेगा. ऐसा तब होगा, जब सूचनाएं भेजने की अनुमति चालू होगी.

इसका मतलब आपके कोड के लिए:

अगर आपका ऐप्लिकेशन, अहम सूचनाओं को स्क्रीन पर दिखाने के लिए requireInteraction: true पर निर्भर करता है, तो macOS पर इसकी कोई गारंटी नहीं होगी. इसके बजाय, आपको यह करना चाहिए:

  • अपने ऐप्लिकेशन को इस तरह डिज़ाइन करें कि सूचनाएं कुछ समय के लिए ही दिखें (टेंपररी).
  • ऐसे उपयोगकर्ताओं को, जो परमानेंट सूचनाएं चाहते हैं, उन्हें पीडब्ल्यूए के सूचना अलर्ट के स्टाइल को "परमानेंट" के तौर पर कॉन्फ़िगर करने के लिए कहें System Settings > Notifications > [Your PWA].
macOS की सिस्टम सेटिंग में, सूचना की स्टाइल सेटिंग को हाइलाइट किया गया है. इसमें अस्थायी और स्थायी सूचनाएं दिख रही हैं.
पीडब्ल्यूए के लिए macOS की सिस्टम सेटिंग. इसमें, अलर्ट के स्टाइल की सेटिंग (टेंपररी बनाम परमानेंट) दिखती है.

डेवलपर पर होने वाला असर: App Badging API के लिए, सूचना की अनुमति ज़रूरी है

App Badging API की मदद से, वेब ऐप्लिकेशन अपने ऐप्लिकेशन के आइकॉन पर बैज सेट कर सकते हैं. जैसे, न पढ़े गए मैसेज की संख्या दिखाना. macOS पर, ऐप्लिकेशन के आइकॉन पर बैज दिखाने की सुविधा, तकनीकी तौर पर ऐप्लिकेशन की सूचना सेटिंग से जुड़ी होती है. पीडब्ल्यूए की सूचनाएं भेजने की अपनी अनुमति होती है. इसलिए:

  • अनुमति ज़रूरी है: डॉक आइकॉन पर बैज दिखाने के लिए, पीडब्ल्यूए के पास ओएस लेवल पर सूचना की अनुमति चालू होनी चाहिए. यह macOS प्लैटफ़ॉर्म के मानकों के मुताबिक है. साथ ही, यह इस बात से भी मेल खाता है कि Safari, वेब ऐप्लिकेशन के लिए Badging API को कैसे मैनेज करता है.
  • कोई गड़बड़ी नहीं दिखती: अगर उपयोगकर्ता, System Settings > Notifications > [Your PWA] में जाकर, "Badge app icon" को बंद कर देता है या सूचनाएं भेजने की अनुमति पूरी तरह से अस्वीकार कर देता है, तो JavaScript में navigator.setAppBadge() को कॉल करने पर, कोई गड़बड़ी नहीं दिखेगी. हालांकि, डॉक पर बैज नहीं दिखेगा. अगर आपका ऐप्लिकेशन, बैज दिखाने की सुविधा पर निर्भर करता है, तो सूचनाएं भेजने की अनुमति का अनुरोध करना न भूलें. इससे यह पक्का होगा कि बैज दिख सके.

एंटरप्राइज़ एडमिन पर होने वाला असर

एंटरप्राइज़ एडमिन, macOS डिवाइसों को मैनेज करते हैं और सूचनाएं भेजने की अनुमतियां पहले से देना चाहते हैं, तो उन्हें यह करना होगा:

  1. Chrome की नीति: आपको अब भी Chrome की नीति (NotificationsAllowedForUrls) कॉन्फ़िगर करनी होगी, ताकि पीडब्ल्यूए के ऑरिजिन को अनुमति दी जा सके.
  2. macOS की नीति: इसके अलावा, अब आपको macOS की कॉन्फ़िगरेशन प्रोफ़ाइल (एमडीएम) भी डिप्लॉय करनी होगी, ताकि पीडब्ल्यूए के बंडल आइडेंटिफ़ायर (ऐप्लिकेशन शिम) को सूचनाएं भेजने की अनुमतियां पहले से दी जा सकें.

अगर ये दोनों नीतियां लागू नहीं की जाती हैं, तो उपयोगकर्ताओं को ओएस लेवल पर प्रॉम्प्ट दिखते रहेंगे.

डेवलपर के लिए सबसे सही तरीके

  1. अनुमति की स्थिति की जांच करें: सूचना भेजने से पहले, हमेशा Notification.permission की जांच करें.
  2. कॉन्टेक्चुअल प्रॉम्प्ट: अगर आपको पता चलता है कि वेब लेवल पर अनुमति दी गई है, लेकिन सूचनाएं नहीं दिख रही हैं, तो उपयोगकर्ता को macOS की सिस्टम सेटिंग पर ले जाएं. ऐसा तब हो सकता है, जब ओएस लेवल पर दी गई अनुमति वापस ले ली गई हो.
  3. कुछ समय के लिए दिखने वाली सूचनाओं के लिए तैयारी करें: macOS पर, अहम उपयोगकर्ता फ़्लो के लिए requireInteraction पर निर्भर न रहें.