इस पेज पर, Cloud Messaging के बारे में अक्सर पूछे जाने वाले सवालों के जवाब और समस्या हल करने में मदद मिलती है.
सूचना बनाने की सुविधा और FCM में क्या अंतर है?
Firebase Cloud Messaging, अपने क्लाइंट SDK टूल और एचटीटीपी सर्वर प्रोटोकॉल के ज़रिए, मैसेज सेवा की सभी सुविधाएं उपलब्ध कराता है. अगर आपको मैसेज भेजने की सुविधा को ज़्यादा बेहतर तरीके से इस्तेमाल करना है, तो FCM सबसे सही विकल्प है.
सूचना बनाने की सुविधा, Firebase Cloud Messaging पर बनाया गया एक आसान और सर्वरलेस मैसेजिंग सलूशन है. सूचना बनाने की सुविधा में, उपयोगकर्ता के लिए आसान ग्राफ़िकल कंसोल मिलता है. साथ ही, इसमें कोडिंग की ज़रूरत कम होती है. इसकी मदद से, उपयोगकर्ताओं को मैसेज भेजे जा सकते हैं, ताकि वे आपके ऐप्लिकेशन से फिर से जुड़ें और उसे इस्तेमाल करना जारी रखें. इससे ऐप्लिकेशन के ज़रिए कारोबार बढ़ाने और मार्केटिंग कैंपेन को बेहतर बनाने में मदद मिलती है.
| सुविधाएं | सूचना बनाने की सुविधा | Cloud Messaging | |
|---|---|---|---|
| टारगेट | एक डिवाइस | ||
| ऐसे क्लाइंट जिन्होंने विषयों की सदस्यता ली है (जैसे, मौसम) | |||
| पहले से तय उपयोगकर्ताओं के ग्रुप (ऐप्लिकेशन, वर्शन, भाषा) में मौजूद क्लाइंट | |||
| तय की गई Analytics ऑडियंस में शामिल क्लाइंट | |||
| डिवाइस ग्रुप में मौजूद क्लाइंट | |||
| क्लाइंट से सर्वर तक अपस्ट्रीम | |||
| मैसेज का टाइप | सूचनाएं 2 केबी तक की होनी चाहिए | ||
| 4 केबी तक के डेटा मैसेज | |||
| डिलीवरी | तुरंत मिलने वाली जानकारी | ||
| क्लाइंट डिवाइस के लिए, आने वाले समय का स्थानीय समय | |||
| Analytics | सूचनाओं के आंकड़ों का कलेक्शन और फ़नल के आंकड़े |
क्या FCM का इस्तेमाल करने के लिए, मुझे Firebase की अन्य सेवाओं का इस्तेमाल करना होगा?
Firebase Cloud Messaging को Firebase की अन्य सेवाओं के बिना, एक अलग कॉम्पोनेंट के तौर पर इस्तेमाल किया जा सकता है.
मेरे टारगेट डिवाइसों को मैसेज क्यों नहीं मिल रहे हैं?
जब ऐसा लगे कि डिवाइसों को मैसेज नहीं मिले हैं, तो सबसे पहले इन दो संभावित वजहों की जांच करें:
सूचना वाले मैसेज के लिए, फ़ोरग्राउंड मैसेज हैंडलिंग. जब ऐप्लिकेशन डिवाइस के फ़ोरग्राउंड में हो, तब सूचना वाले मैसेज मैनेज करने के लिए, क्लाइंट ऐप्लिकेशन को मैसेज मैनेज करने वाला लॉजिक जोड़ना होगा. iOS और Android के लिए जानकारी देखें.
नेटवर्क फ़ायरवॉल से जुड़ी पाबंदियां. अगर आपके संगठन के पास ऐसा फ़ायरवॉल है जो इंटरनेट पर आने-जाने वाले ट्रैफ़िक को रोकता है, तो आपको उसे कॉन्फ़िगर करना होगा. इससे FCM के साथ कनेक्टिविटी को अनुमति मिलेगी, ताकि आपके Firebase Cloud Messaging क्लाइंट ऐप्लिकेशन को मैसेज मिल सकें. ये पोर्ट खोले जाने चाहिए:
- 5228
- 5229
- 5230
FCM आम तौर पर 5228 का इस्तेमाल करता है. हालांकि, कभी-कभी यह 5229 और 5230 का भी इस्तेमाल करता है. FCM, खास आईपी पते उपलब्ध नहीं कराता. इसलिए, आपको अपने फ़ायरवॉल को Google के 15169 के एएसएन में मौजूद आईपी ब्लॉक में शामिल सभी आईपी पतों पर आउटगोइंग कनेक्शन स्वीकार करने की अनुमति देनी चाहिए.
मेरे Android ऐप्लिकेशन में onMessageReceived को कॉल क्यों नहीं किया जा रहा है?
जब आपका ऐप्लिकेशन बैकग्राउंड में होता है, तब सूचना वाले मैसेज सिस्टम ट्रे में दिखते हैं और onMessageReceived को कॉल नहीं किया जाता. डेटा पेलोड वाले सूचना मैसेज के लिए, सूचना मैसेज सिस्टम ट्रे में दिखता है. साथ ही, सूचना मैसेज में शामिल डेटा को उस इंटेंट से वापस पाया जा सकता है जो उपयोगकर्ता के सूचना पर टैप करने पर लॉन्च होता है.
ज़्यादा जानकारी के लिए, मैसेज पाना और उन्हें मैनेज करना लेख पढ़ें.
बैकअप से वापस लाए गए किसी ऐक्टिव ऐप्लिकेशन इंस्टेंस को मैसेज भेजने पर, मुझे 404 गड़बड़ी का मैसेज क्यों मिलता है?
FID (Firebase इंस्टॉलेशन आईडी), ऐप्लिकेशन इंस्टेंस का आइडेंटिफ़ायर होता है. डिफ़ॉल्ट रूप से, Firebase इंस्टॉलेशन डेटा का बैक अप लिया जाता है और उसे वापस लाया जाता है. इसलिए, ऐप्लिकेशन को पहले जैसा करने पर, ऐप्लिकेशन के पहले जैसे किए गए इंस्टेंस और ओरिजनल इंस्टेंस का एफ़आईडी एक ही होता है. FCM हर एफ़आईडी के लिए सिर्फ़ एक टोकन सेव करता है. इसलिए, अगर ऐप्लिकेशन के ओरिजनल इंस्टेंस और रीस्टोर किए गए इंस्टेंस, दोनों का इस्तेमाल किया जा रहा है, तो ऐप्लिकेशन के एक इंस्टेंस को FCM के साथ रजिस्टर करने पर, ऐप्लिकेशन के दूसरे इंस्टेंस का टोकन हटा दिया जाता है. इससे 404 गड़बड़ियां होती हैं.
हमारा सुझाव है कि डेवलपर अपने ऐप्लिकेशन में ये काम करें:
- बैकअप में Firebase इंस्टॉलेशन डेटा को शामिल न करें. Firebase इंस्टॉलेशन का डेटा,
PersistedInstallation....jsonफ़ाइल में सेव किया जाता है. फ़ाइल का नाम किसी ऐप्लिकेशन के लिए कॉन्स्टेंट होता है. उदाहरण के लिए,<exclude domain="file" path="PersistedInstallation.W0R...GQ.json" />
Apple ने एलान किया है कि वह APNs के लिए लेगसी बाइनरी प्रोटोकॉल को बंद कर रहा है. क्या मुझे कुछ करना होगा?
नहीं. Firebase Cloud Messaging ने 2017 में, एचटीटीपी/2 पर आधारित APNs प्रोटोकॉल पर स्विच कर लिया था. अगर iOS डिवाइसों पर सूचनाएं भेजने के लिए FCM का इस्तेमाल किया जा रहा है, तो आपको कुछ करने की ज़रूरत नहीं है.
FCM के कोटा और सीमाएं
मैं दो मिनट में अपने सभी ग्राहकों को कैसे सूचना दूं?
इस तरह के इस्तेमाल की अनुमति नहीं है. आपको अपने ट्रैफ़िक को पांच मिनट में बांटना होगा.
मेरा ऐप्लिकेशन, उपयोगकर्ताओं को इवेंट की सूचनाएं देता है. मेरे कारोबार के मॉडल के लिए यह ज़रूरी है कि ये मैसेज तुरंत डिलीवर हों. क्या मुझे ज़्यादा कोटा मिल सकता है?
माफ़ करें, हम इस वजह से कोटा नहीं बढ़ा सकते. ट्रैफ़िक में अचानक होने वाली बढ़ोतरी से बचने के लिए, आपको अपने ट्रैफ़िक को पांच मिनट से ज़्यादा समय तक फैलाना होगा.
मेरे मैसेज, शेड्यूल किए गए इवेंट के बारे में हैं. मैं हर घंटे की शुरुआत में सारा ट्रैफ़िक कैसे भेजूं?
हमारा सुझाव है कि इवेंट शुरू होने से कम से कम पांच मिनट पहले सूचनाएं भेजना शुरू करें. इसके अलावा, डेटा मैसेज भेजें और अपने प्लैटफ़ॉर्म के onMessageReceived हैंडलर के एनालॉग को लागू करें, ताकि लोकल सूचनाओं को पहले से शेड्यूल किया जा सके.
मैं अपने कोटे के इस्तेमाल को कैसे मॉनिटर करूं?
कोटा मेट्रिक को चार्ट करने और मॉनिटर करने के तरीके के बारे में जानने के लिए, Google Cloud के दिशा-निर्देश देखें.
429 कोड वाली गड़बड़ियों को मैनेज करना, मेरे और मेरे कारोबार के लिए मुश्किल है. क्या मुझे 429 गड़बड़ी से बचने के लिए, छूट या ज़्यादा कोटा मिल सकता है?
हम समझते हैं कि कोटा की सीमाएं आपके लिए चुनौती बन सकती हैं. हालांकि, सेवा को भरोसेमंद बनाए रखने के लिए कोटा ज़रूरी है. इसलिए, हम कोटा की सीमाओं में छूट नहीं दे सकते. 429 गड़बड़ियों को ठीक से मैनेज करने के लिए, फिर से कोशिश करें.
कोटा बढ़ाने के मेरे अनुरोध को पूरा होने में कितना समय लगेगा?
कोटा बढ़ाने का अनुरोध, FCM के इस्तेमाल पर निर्भर करता है. किसी भी मामले में, आपको कुछ कामकाजी दिनों में जवाब मिल सकता है. कुछ मामलों में, FCM के इस्तेमाल और अलग-अलग स्थितियों के बारे में आपसे कुछ सवाल पूछे जा सकते हैं. इस वजह से, प्रोसेस में ज़्यादा समय लग सकता है. अगर सभी शर्तें पूरी होती हैं, तो ज़्यादातर अनुरोधों को दो हफ़्तों के अंदर प्रोसेस कर दिया जाएगा.
क्या मुझे किसी अस्थायी इवेंट के लिए ज़्यादा कोटा मिल सकता है?
एक महीने तक चलने वाले किसी इवेंट के लिए, अतिरिक्त कोटा का अनुरोध किया जा सकता है. इवेंट शुरू होने से कम से कम एक महीने पहले अनुरोध करें. साथ ही, इवेंट शुरू और खत्म होने की तारीख की साफ़ तौर पर जानकारी दें. FCM आपके अनुरोध को पूरा करने की हर मुमकिन कोशिश करेगा. अगर कोटा बढ़ाने की अनुमति मिल जाती है, तो इवेंट खत्म होने के बाद कोटा पहले जैसा हो जाएगा.
क्या मेरे मौजूदा कोटे में बदलाव हो सकता है?
Google ऐसा आसानी से नहीं करेगा. हालांकि, सिस्टम की सुरक्षा को बनाए रखने के लिए, ज़रूरत के हिसाब से कोटा में बदलाव किया जा सकता है. जब भी मुमकिन होगा, Google आपको ऐसे बदलावों के बारे में पहले ही सूचना दे देगा. Cloud MSA के संपर्कों की जानकारी को अपडेट रखें, ताकि सेवा में हुए अहम बदलावों के एलान की सूचनाएं मिलने की संभावना बढ़ सके.
FCM लेगसी एपीआई को बंद किया जा रहा है
सर्वर साइड एपीआई, सितंबर 2026 में बंद कर दिए जाएंगे
कौनसे एपीआई और सुविधाएं अब काम नहीं करती हैं और उन्हें बंद कर दिया जाएगा? अगर मैं इन एपीआई का इस्तेमाल कर रहा/रही हूं, तो मुझे क्या करना चाहिए?
सभी InstanceId सर्वर एपीआई और डिवाइस ग्रुप की सुविधा अब काम नहीं करती. इन्हें 29 सितंबर, 2027 को बंद कर दिया जाएगा. यहां दी गई टेबल में, बंद किए गए एपीआई/सुविधाओं और ज़रूरी कार्रवाई के बारे में ज़्यादा जानकारी दी गई है.
| एपीआई का नाम | एपीआई एंडपॉइंट | इस्तेमाल का मकसद | ग्राहक पर असर | कार्रवाई ज़रूरी है |
|---|---|---|---|---|
| InstanceId info API | https://iid.googleapis.com/iid/info | InstanceId / FCM टोकन से जुड़ी जानकारी पाना | इस एपीआई के लिए किए गए अनुरोध, 29 सितंबर, 2027 के बाद स्वीकार नहीं किए जाएंगे. | टोकन की पुष्टि करने के लिए एपीआई का इस्तेमाल करने वाले ग्राहकों के लिए, FCM V1 send API का इस्तेमाल करें और validate_only को 'सही है' पर सेट करें.
विषय की सदस्यता की जानकारी पाने के लिए एपीआई का इस्तेमाल करने वाले ग्राहकों को, विषय की सदस्यता के लिए उपलब्ध नए एपीआई पर माइग्रेट करना होगा. |
| InstanceId topic subscription API | https://iid.googleapis.com/iid/v1/…/rel/topics https://iid.googleapis.com/iid/v1:batchAdd https://iid.googleapis.com/iid/v1:batchRemove |
लेगसी टॉपिक सब्सक्रिप्शन एपीआई की मदद से, किसी विषय के लिए टोकन की सदस्यता लेना. | इन एपीआई के लिए किए जाने वाले अनुरोध, 29 सितंबर, 2027 के बाद स्वीकार नहीं किए जाएंगे. | विषय की सदस्यता लेने और उसे छोड़ने के लिए, विषय की सदस्यता लेने के लिए बने नए FCM सर्वर एपीआई पर माइग्रेट करें. |
| InstanceId batch import API | https://iid.googleapis.com/iid/v1:batchImport | सर्वर साइड पर बैच में iOS के लिए एफ़सीएम टोकन बनाना. | इस एपीआई के लिए किए गए अनुरोध, 29 सितंबर, 2027 के बाद स्वीकार नहीं किए जाएंगे.
सर्वर साइड पर APNs टोकन से FCM रजिस्ट्रेशन बनाने की सुविधा काम नहीं करेगी. |
APNs टोकन का इस्तेमाल करके सूचनाएं भेजने के लिए, Apple की APNs सेवा का इस्तेमाल किया जा सकता है.
FCM से मिलने वाले अतिरिक्त फ़ायदे पाने के लिए, अपने ऐप्लिकेशन को FCM iOS SDK के साथ इंटिग्रेट करें. इससे क्लाइंट पर FCM रजिस्ट्रेशन जनरेट होंगे. |
| डिवाइस ग्रुप मैनेजमेंट एपीआई | https://fcm.googleapis.com/fcm/notification https://fcm.googleapis.com/gcm/notification https://fcm.googleapis.com/iid/notification https://fcm.googleapis.com/notification |
डिवाइस ग्रुप के सदस्यों को जोड़ना / हटाना/ वापस लाना. | इस एपीआई के लिए किए गए अनुरोध, 29 सितंबर, 2027 के बाद स्वीकार नहीं किए जाएंगे. | इस सुविधा को बंद करने के लिए, यह गाइड देखें.
ग्रुप टोकन के बजाय, अब भी अलग-अलग FCM रजिस्ट्रेशन पर मैसेज भेजे जा सकते हैं. |
| डिवाइस ग्रुप को भेजें | https://fcm.googleapis.com/v1/projects/…/messages:send | ग्रुप notification_key का इस्तेमाल करके, डिवाइस ग्रुप को मैसेज भेजना. | यह एपीआई काम करता रहेगा. हालांकि, 29 सितंबर, 2027 के बाद यह डिवाइस ग्रुप टोकन के साथ काम नहीं करेगा. |
अगर मैं विषय की सदस्यताओं को मैनेज करने के लिए, Firebase Admin SDK का इस्तेमाल कर रहा/रही हूं, तो क्या इस बदलाव का मुझ पर असर पड़ेगा? मुझे क्या करना चाहिए?
अगर विषय की सदस्यताओं को मैनेज करने के लिए, Firebase Admin SDK के पुराने वर्शन का इस्तेमाल किया जा रहा है, तो इस बदलाव का असर आप पर पड़ेगा. आपको अपने Firebase Admin SDK को इन वर्शन पर अपग्रेड करना होगा:
| प्लेटफ़ॉर्म | Admin SDK के इस वर्शन पर असर पड़ रहा है | Admin SDK का वह वर्शन जिस पर अपग्रेड करना है |
|---|---|---|
| Node.js | <=14.4.0 | >=14.5.0 |
| Python | <=7.6.0 | >=7.7.0 |
| Java | <=9.10.0 | >=9.11.0 |
| जाएं | <=4.21.0 | >=4.22.0 |
| .NET | <=3.6.0 | >=3.7.0 |
क्या मुझे 29 सितंबर, 2027 से पहले सेवा के डाउनग्रेड होने की सूचना मिलेगी?
नहीं. आपके पास बंद किए जा रहे एपीआई से उनके विकल्पों पर माइग्रेट करने के लिए 12 महीने हैं. इस दौरान, सेवा की क्वालिटी में कोई गिरावट नहीं आएगी. हमारा सुझाव है कि आप जल्द से जल्द माइग्रेशन की प्रोसेस पूरी करें, ताकि इस बदलाव से आपके कैंपेन पर कोई असर न पड़े.
अगर 29 सितंबर, 2027 के बाद, बंद किए जा चुके एपीआई को कॉल किया जाता है, तो आपको गड़बड़ियां मिल सकती हैं.
क्या नए उपयोगकर्ता, बंद होने से पहले उन एपीआई/सुविधाओं को इस्तेमाल कर सकते हैं जिन्हें बंद किया जा रहा है?
नए उपयोगकर्ता, बंद किए जा रहे एपीआई/सुविधाओं को 1 जनवरी, 2027 से पहले इस्तेमाल कर सकते हैं. नए उपयोगकर्ता, 1 जनवरी, 2027 के बाद, बंद किए जा चुके एपीआई का इस्तेमाल नहीं कर पाएंगे. जिन उपयोगकर्ताओं ने बंद किए जा चुके एपीआई का इस्तेमाल किया है वे 29 सितंबर, 2027 तक उनका इस्तेमाल जारी रख सकते हैं.
AndroidConfigV2 के बारे में अक्सर पूछे जाने वाले सवाल
लेगसी AndroidConfig (v1) API कब तक काम करेगा?
FCM, AndroidConfigV2 के सामान्य रूप से उपलब्ध (जीए) होने के बाद, कई सालों तक v1 AndroidConfig पेलोड के साथ काम करना जारी रखेगा. माइग्रेशन की टाइमलाइन कई सालों तक चलती है. हालांकि, AndroidConfigV2 से सूचनाएं ज़्यादा सटीक तरीके से डिलीवर होती हैं. इसलिए, हमारा सुझाव है कि आप जल्द से जल्द माइग्रेट करें.
AndroidConfigV2, Android OS के किन वर्शन के साथ काम करता है?
AndroidConfigV2, Android के उन सभी वर्शन पर काम करेगा जो Google के साथ काम करते हैं. लेगसी v1 API के बंद होने पर, 10 साल से ज़्यादा पुराने डिवाइसों को छोड़कर, बाकी सभी डिवाइसों पर यह सुविधा काम करेगी.
क्या AndroidConfigV2 उन डिवाइसों पर पेलोड डिलीवर करेगा जो सिर्फ़ पुराने v1 इंटरफ़ेस के साथ काम करते हैं? साथ ही, मुझे किस क्रम में बदलावों को रोल आउट करना चाहिए?
हां. AndroidConfigV2 अनुरोध भेजने पर, FCM और GMS Core, पुराने क्लाइंट SDK टूल पर चलने वाले डिवाइसों या उन ऐप्लिकेशन के लिए पेलोड का अपने-आप अनुवाद कर देते हैं जिन्होंने अब तक onNotificationReceived() या onBackgroundSyncReceived() को बदला नहीं है. इसके बाद, वे onMessageReceived() का इस्तेमाल करके पेलोड डिलीवर करते हैं.
AndroidConfigV2 के लिए, NotificationManager.notify() को सीधे कॉल करने के बजाय, FCM SDK टूल के ज़रिए सूचनाएं वापस करना क्यों ज़रूरी है?
ओपन-सोर्स FCM SDK टूल को NotificationResponse वापस करके या FcmNotificationManager का इस्तेमाल करके:
- आपके ऐप्लिकेशन को सूचना को डिक्रिप्ट या पसंद के मुताबिक बनाने के लिए, सुरक्षित तरीके से काम करने वाली विंडो मिलती है.
- अगर आपके ऐप्लिकेशन के पास समय नहीं है, तो GMS Core यह पक्का करता है कि सूचनाएं समय पर डिलीवर हों. इसके लिए, वह
remote_notification.notificationमें कॉन्फ़िगर की गई बैकअप सूचना पोस्ट करता है.
क्या AndroidConfigV2, ऐप्लिकेशन के फ़ोरग्राउंड और बैकग्राउंड में होने पर सूचनाओं को अलग-अलग तरीके से मैनेज करता है?
नहीं. लेगसी v1 सूचना मैसेज के उलट, AndroidConfigV2 मैसेज की रूटिंग को इस आधार पर नहीं बांटता कि आपका ऐप्लिकेशन फ़ोरग्राउंड में है या बैकग्राउंड में.
RemoteNotification भेजने पर, सूचना दोनों स्थितियों में अपने-आप दिखती है. हालांकि, ऐसा तब नहीं होता, जब आपने mutable_content: true सेट किया हो और NotificationResponse.createEmpty() का इस्तेमाल करके, onNotificationReceived() में सूचना को सायलेंट किया हो.
म्यूटेबल RemoteNotification को हैंडल करते समय, मेरे ऐप्लिकेशन को कितना समय मिलता है?
जब mutable_content: true को RemoteNotification पर सेट किया जाता है, तो आपके ऐप्लिकेशन के पास onNotificationReceived() में 20 सेकंड तक का समय होता है. इस दौरान, वह पेलोड को डिक्रिप्ट कर सकता है, छोटी ऐसेट (जैसे, अवतार) फ़ेच कर सकता है या NotificationResponse को वापस करने से पहले आपके ऐप्लिकेशन सर्वर से संपर्क कर सकता है. अगर कॉलबैक में 20 सेकंड से ज़्यादा समय लगता है, तो प्रोसेस रद्द कर दी जाती है. इसके बाद, GMS Core, remote_notification.notification पेलोड के आधार पर अपने-आप फ़ॉलबैक सूचना पोस्ट करता है.
बदले जा सकने वाले RemoteNotifications के लिए, सूचनाएं न दिखाने की सुविधा कैसे काम करती है?
ऐप्लिकेशन, onNotificationReceived() से NotificationResponse.suppress() को वापस करके, RemoteNotification को दबा सकते हैं. उदाहरण के लिए, जब किसी चैट को म्यूट किया जाता है, किसी मैसेज भेजने वाले को ब्लॉक किया जाता है या पूरी तरह सुरक्षित पेलोड की पुष्टि नहीं हो पाती है.
- बैकग्राउंड में: आपका ऐप्लिकेशन, रोलिंग विंडो में मिले
RemoteNotificationमैसेज में से 25% तक मैसेज को दबा सकता है. अगर आपके ऐप्लिकेशन के बैकग्राउंड में सूचनाएं न दिखाने की दर 25% से ज़्यादा है, तो GMS Core,remote_notification.notificationपेलोड से फ़ॉलबैक सूचना को अपने-आप रेंडर और पोस्ट करता है. - फ़ोरग्राउंड में: फ़ोरग्राउंड में ऐक्टिव रहने के दौरान, सभी रिमोट सूचनाओं को दबाया जा सकता है. उदाहरण के लिए, सिस्टम से सूचना पोस्ट करने के बजाय, ऐप्लिकेशन में टोस्ट दिखाना या खुली हुई चैट स्क्रीन को अपडेट करना.
क्या मेरा ऐप्लिकेशन एक ही RemoteNotification से कई सूचनाएं पोस्ट कर सकता है या किसी मौजूदा सूचना को रद्द कर सकता है?
हां. एक से ज़्यादा सूचनाएं रद्द करने या पोस्ट करने के लिए, यह तरीका अपनाएं:
- किसी एक सूचना को रद्द करना: पहले पोस्ट की गई किसी सूचना को खारिज करने के लिए,
NotificationResponse.createCancel(tag, id)कोonNotificationReceived()से वापस करें. - एक से ज़्यादा सूचनाएं पोस्ट करना या रद्द करने और पोस्ट करने की प्रोसेस को जोड़ना:
postNow(tag, id, notification)औरcancelNow(tag, id)को कई बार शुरू करने के लिए,onNotificationReceived()मेंgetFcmNotificationManager(message)को कॉल करें. इसके बाद, प्रोसेस पूरी होने परmanager.finished()को वापस करें.
क्या कस्टम RemoteViews, AndroidConfigV2 के साथ काम कर सकते हैं?
हां, पसंद के मुताबिक बनाए गए RemoteViews, AndroidConfigV2 के साथ काम करेंगे.
onNotificationReceived(), स्टैंडर्ड Android Notification ऑब्जेक्ट दिखाता है. साथ ही, सभी स्टैंडर्ड Android सूचना एपीआई, जैसे कि setCustomContentView() काम करते रहते हैं. ध्यान दें कि RemoteViews और Views, मेंटेनेंस मोड में हैं. इसलिए, हमारा सुझाव है कि आप Compose पर माइग्रेट करें.