उपयोगकर्ताओं को संदेश भेजने के लिए FCM और FIAM का उपयोग करें

1. शुरू करने से पहले

इस कोडलैब में, आप सीखते हैं कि उपयोगकर्ताओं के साथ जुड़ने की क्षमता कैसे जोड़ें, चाहे वे आपके ऐप का उपयोग अग्रभूमि में कर रहे हों या आपका ऐप पृष्ठभूमि में हो।

206c7ecece550bde.png

आवश्यक शर्तें

कोई नहीं

आप क्या सीखेंगे

  • अपने एंड्रॉइड ऐप में फायरबेस जोड़ें
  • FCM और FIAM निर्भरताएँ जोड़ें
  • अपने ऐप पर परीक्षण FCM संदेश भेजें
  • अपने ऐप पर परीक्षण FIAM संदेश भेजें

आपको किस चीज़ की ज़रूरत पड़ेगी

  • एंड्रॉइड स्टूडियो 4.1
  • एंड्रॉइड डिवाइस या एमुलेटर

2. आरंभ करें

नमूना कोड प्राप्त करें

कमांड लाइन से GitHub रिपॉजिटरी को क्लोन करें:

स्टार्टर ऐप आयात करें

एंड्रॉइड स्टूडियो से, codelab-fcm-and-fiam निर्देशिका का चयन करें ( android_studio_folder.png ). यह पिछले चरण में क्लोन किया गया क्लोन होगा ( फ़ाइल > ओपन > .../कोडलैब-एफसीएम-एंड-फ़ियाम)।

अब आपके पास Android Studio में FcmAndFiam प्रोजेक्ट खुला होना चाहिए। यदि आपको google-services.json फ़ाइल के गुम होने की चेतावनी दिखाई देती है, तो चिंता न करें। इसे अगले चरण में जोड़ा जाएगा.

3. फायरबेस कंसोल प्रोजेक्ट बनाएं

प्रोजेक्ट में फायरबेस जोड़ें

  1. फायरबेस कंसोल पर जाएं।
  2. प्रोजेक्ट जोड़ें चुनें.
  3. प्रोजेक्ट का नाम चुनें या दर्ज करें.
  4. फायरबेस कंसोल में शेष सेटअप चरणों का पालन करें, फिर प्रोजेक्ट बनाएं पर क्लिक करें (या यदि आप मौजूदा Google प्रोजेक्ट का उपयोग कर रहे हैं तो फायरबेस जोड़ें)।
  5. अपने नए प्रोजेक्ट की अवलोकन स्क्रीन से, सेटअप वर्कफ़्लो लॉन्च करने के लिए एंड्रॉइड आइकन पर क्लिक करें।
  6. कोडलैब का पैकेज नाम दर्ज करें: com.google.firebase.codelab.fcmandfiam

अपने ऐप में google-services.json फ़ाइल जोड़ें

पैकेज का नाम जोड़ने के बाद रजिस्टर ऐप पर क्लिक करें, फिर अपनी फायरबेस एंड्रॉइड कॉन्फ़िगरेशन फ़ाइल प्राप्त करने के लिए google-services.json डाउनलोड करें, फिर अपने प्रोजेक्ट में app निर्देशिका में google-services.json फ़ाइल को कॉपी करें। फ़ाइल डाउनलोड होने के बाद आप कंसोल में दिखाए गए अगले चरणों के लिए स्किप पर क्लिक कर सकते हैं (वे बिल्ड-एंड्रॉइड-स्टार्ट प्रोजेक्ट में आपके लिए पहले ही किए जा चुके हैं)।

अपने ऐप में google-services प्लगइन जोड़ें

Google-services प्लगइन आपके एप्लिकेशन को Firebase का उपयोग करने के लिए कॉन्फ़िगर करने के लिए google-services.json फ़ाइल का उपयोग करता है। Google-सेवा प्लगइन निर्भरता और प्लगइन को पहले से ही क्रमशः प्रोजेक्ट और ऐप स्तर की बिल्ड फ़ाइलों में जोड़ा जाना चाहिए। निम्नलिखित प्रविष्टियों की पुष्टि करें:

बिल्ड.ग्रेडल

buildscript {
  ...
  dependencies {
    ...
    classpath 'com.google.gms:google-services:4.3.8'
  }
}

ऐप/बिल्ड.ग्रेडल

plugins {
  ...
  id: 'com.google.gms.google-services'
}

निर्भरताएँ जोड़ें

FCM और FIAM को निम्नलिखित निर्भरताओं की आवश्यकता होती है। इन निर्भरताओं को पहले से ही ऐप लेवल बिल्ड फ़ाइल में जोड़ा जाना चाहिए। पुष्टि करें कि निम्नलिखित निर्भरताएँ जोड़ी गई हैं:

ऐप/बिल्ड.ग्रेडल

dependencies {
  ...
  implementation platform('com.google.firebase:firebase-bom:28.4.2')
  implementation 'com.google.firebase:firebase-analytics'
  implementation 'com.google.firebase:firebase-messaging'
  implementation 'com.google.firebase:firebase-inappmessaging-display'
}

अपने प्रोजेक्ट को ग्रेडेल फ़ाइलों के साथ सिंक करें

यह सुनिश्चित करने के लिए कि सभी निर्भरताएँ आपके ऐप के लिए उपलब्ध हैं, आपको इस बिंदु पर अपने प्रोजेक्ट को ग्रेडेल फ़ाइलों के साथ सिंक करना चाहिए। एंड्रॉइड स्टूडियो टूलबार से फ़ाइल > ग्रैडल फ़ाइलों के साथ सिंक प्रोजेक्ट चुनें।

4. लॉग पहचानकर्ता

फायरबेस क्लाउड मैसेजिंग और फायरबेस इन ऐप मैसेजिंग दोनों ही ऐप्स पर संदेश भेजने के लिए पहचानकर्ताओं का उपयोग करते हैं। FCM एक पंजीकरण टोकन का उपयोग करता है और FIAM एक इंस्टॉलेशन आईडी का उपयोग करता है।

  1. MainActivity.kt में संदेश भेजने के लिए आवश्यक पहचानकर्ताओं को लॉग करने के लिए TODO को नीचे दिए गए कोड से बदलें:
FirebaseMessaging.getInstance().token.addOnCompleteListener { regTokenTask ->
   if (regTokenTask.isSuccessful) {
       Log.d(TAG, "FCM registration token: ${regTokenTask.result}")
   } else {
       Log.e(TAG, "Unable to retrieve registration token",
           regTokenTask.exception)
   }
}
FirebaseInstallations.getInstance().id.addOnCompleteListener { installationIdTask ->
   if (installationIdTask.isSuccessful) {
       Log.d(TAG, "Firebase Installations ID: ${installationIdTask.result}")
   } else {
       Log.e(TAG, "Unable to retrieve installations ID",
           installationIdTask.exception)
   }
}
  1. अपने एंड्रॉइड डिवाइस को कनेक्ट करें, और रन पर क्लिक करें ( निष्पादित.png )एंड्रॉइड स्टूडियो टूलबार में। लॉग आइडेंटिफ़ायर बटन पर टैप करने से एफसीएम पंजीकरण टोकन और फायरबेस इंस्टॉलेशन आईडी लॉगकैट में लॉग हो जाएगा। आउटपुट इस तरह दिखना चाहिए:
D/FcmAndFiam: Firebase Installations ID: emMc5...AsJfb
  FCM registration token: emMc5LART6GV7...r0Q

5. परीक्षण FCM संदेश भेजें

FCM संदेश फायरबेस कंसोल और FCM REST API दोनों से भेजे जा सकते हैं। इस कोडलैब में हम एक FCM अधिसूचना संदेश बनाएंगे और इसे अपने डिवाइस पर भेजेंगे। अधिसूचना संदेश वे होते हैं जो सिस्टम के अधिसूचना क्षेत्र में प्रदर्शित होते हैं। एक परीक्षण FCM संदेश इसके द्वारा भेजें:

  1. सुनिश्चित करें कि ऐप पृष्ठभूमि में है (होम स्क्रीन पर जाएं)
  2. फायरबेस कंसोल पर जाएं और बाएं नेविगेशन में क्लाउड मैसेजिंग चुनें
  3. अपना पहला संदेश भेजें चुनें
  4. संदेश के लिए एक शीर्षक और मुख्य भाग जोड़ें, फिर परीक्षण संदेश भेजें पर क्लिक करें

207ced65f5245ada.png

  1. एफसीएम पंजीकरण टोकन जोड़ें, फिर परीक्षण पर क्लिक करें

f3556c6a8a6453fe.png

  1. डिवाइस पर डिस्प्ले नोटिफिकेशन देखें
  2. नोटिफिकेशन पर टैप करने से ऐप खुल जाता है

6. परीक्षण FIAM संदेश भेजें

विभिन्न उपयोगकर्ता घटनाओं के परिणामस्वरूप फायरबेस इन ऐप मैसेजिंग को ट्रिगर किया जा सकता है। परीक्षण संदेश इन ऐप संदेश को ट्रिगर करने के लिए ऐप ओपन इवेंट का उपयोग करता है। एक परीक्षण FIAM संदेश इसके द्वारा भेजें:

  1. सुनिश्चित करें कि ऐप पृष्ठभूमि में है (होम स्क्रीन पर जाएं)
  2. फायरबेस कंसोल पर जाएं और बाएं नेविगेशन में इन-ऐप मैसेजिंग चुनें
  3. अपना पहला अभियान बनाएं चुनें
  4. शीर्ष बैनर अभियान चुनें और संदेश का शीर्षक और मुख्य भाग दर्ज करें
  5. डिवाइस पर परीक्षण करें पर क्लिक करें

69f6ea5efff240d1.png

  1. इंस्टॉलेशन आईडी जोड़ें और टेस्ट पर क्लिक करें

24b101edfab47144.png

  1. ऐप पुनः खोलें
  2. ऐप संदेश में देखें

7. बधाई

बधाई हो, आपने FCM और FIAM दोनों संदेश सफलतापूर्वक भेज दिए हैं। अब आप जानते हैं कि अपने उपयोगकर्ताओं के साथ कैसे जुड़ना है, चाहे वे आपके ऐप का उपयोग अग्रभूमि में कर रहे हों या आपका ऐप पृष्ठभूमि में हो।

अग्रिम पठन

आगे क्या होगा

  • अपने स्वयं के एंड्रॉइड ऐप में उपयोगकर्ताओं को संदेश भेजें।

संदर्भ दस्तावेज़