了解 2023 年 Google I/O 大会上介绍的 Firebase 亮点。了解详情

Android और Firebase के बारे में और जानें

जैसा कि आप Firebase का उपयोग करके अपने Android प्रोजेक्ट को विकसित कर रहे हैं, आपको ऐसी अवधारणाएँ मिल सकती हैं जो Firebase के लिए अपरिचित या विशिष्ट हैं। इस पेज का उद्देश्य उन सवालों के जवाब देना है या अधिक जानने के लिए आपको संसाधनों की ओर इशारा करना है।

यदि इस पृष्ठ पर कवर नहीं किए गए किसी विषय के बारे में आपके कोई प्रश्न हैं, तो बेझिझक हमारे ऑनलाइन समुदायों में से एक पर जाएँ। हम इस पृष्ठ को समय-समय पर नए विषयों के साथ अपडेट भी करेंगे, इसलिए यह देखने के लिए वापस जांचें कि क्या हमने वह विषय जोड़ा है जिसके बारे में आप सीखना चाहते हैं!

Android स्टूडियो के लिए Firebase सहायक प्लगइन

फायरबेस असिस्टेंट एक एंड्रॉइड स्टूडियो प्लगइन है जो आपके एंड्रॉइड ऐप को फायरबेस प्रोजेक्ट के साथ पंजीकृत करता है और आपके एंड्रॉइड प्रोजेक्ट के लिए आवश्यक फायरबेस कॉन्फिग फाइल, प्लगइन्स और निर्भरता जोड़ता है - सभी एंड्रॉइड स्टूडियो के भीतर से!

Firebase सहायक का उपयोग करने के लिए Android प्रारंभ करें पृष्ठ में दिए गए निर्देशों का पालन करें। सुनिश्चित करें कि आप Android Studio और Firebase सहायक दोनों के सबसे अद्यतित संस्करणों का उपयोग कर रहे हैं ( फ़ाइल > अपडेट के लिए जाँच करें पर जाएँ)।

जब आप अपने ऐप में जोड़ने के लिए विशिष्ट फायरबेस उत्पादों का चयन करते हैं, तो फायरबेस सहायक स्वचालित रूप से आपकी app/build.gradle फ़ाइल में आवश्यक निर्भरताओं की घोषणा करता है। हालाँकि, Firebase सुविधाओं का उपयोग करने के लिए जो Firebase सहायक की वर्तमान क्षमताओं से परे हैं, आप इन निर्भरताओं में कुछ मैन्युअल परिवर्तन करना चाह सकते हैं:

  • यदि आप Firebase Android BoM का उपयोग करना चाहते हैं, तो BoM प्लेटफ़ॉर्म को आयात करने के लिए अपने मॉड्यूल (ऐप-लेवल) ग्रैडल फ़ाइल (आमतौर पर app/build.gradle ) में निर्भरताओं को अपडेट करें। आपको प्रत्येक फायरबेस लाइब्रेरी डिपेंडेंसी लाइन से संस्करणों को हटाने की भी आवश्यकता होगी।

  • यदि आप कोटलिन एक्सटेंशन लाइब्रेरी का उपयोग करना चाहते हैं, तो इसके बजाय फायरबेस लाइब्रेरी के ktx संस्करण का उपयोग करने के लिए अपने मॉड्यूल (ऐप-लेवल) ग्रैडल फ़ाइल (आमतौर पर app/build.gradle ) में जोड़ी गई निर्भरता रेखा को संशोधित करें।

Google सेवाएं - प्लगइन और कॉन्फ़िगरेशन फ़ाइल

अपने Android प्रोजेक्ट में Firebase को जोड़ने के भाग के रूप में, आपको अपने प्रोजेक्ट में google-services प्लगइन और google-services.json कॉन्फ़िगरेशन फ़ाइल जोड़नी होगी।

अगर आप Firebase कंसोल , Management REST API , या Firebase CLI के माध्यम से अपने Android प्रोजेक्ट में Firebase जोड़ते हैं, तो आपको अपने प्रोजेक्ट में मैन्युअल रूप से प्लगइन और कॉन्फ़िगरेशन फ़ाइल जोड़नी होगी। हालांकि, अगर आप फायरबेस सहायक का उपयोग करते हैं, तो सेटअप के दौरान ये कार्य आपके लिए स्वचालित रूप से हो जाते हैं।

Google सेवाओं के प्लग इन और कॉन्फ़िगरेशन फ़ाइल के एक साथ काम करने के तरीके के बारे में जानने के लिए Android दस्तावेज़ देखें।

Firebase Android BoM (सामग्री का बिल)

फायरबेस एंड्रॉइड बीओएम (सामग्री का बिल) आपको केवल एक संस्करण - बीओएम के संस्करण को निर्दिष्ट करके अपने सभी फायरबेस लाइब्रेरी संस्करणों को प्रबंधित करने में सक्षम बनाता है।

जब आप अपने ऐप में फायरबेस बीओएम का उपयोग करते हैं, तो बीओएम स्वचालित रूप से बीओएम के संस्करण में मैप किए गए अलग-अलग लाइब्रेरी संस्करणों में खींच लेता है। सभी व्यक्तिगत पुस्तकालय संस्करण संगत होंगे। जब आप अपने ऐप में BoM के संस्करण को अपडेट करते हैं, तो आपके द्वारा अपने ऐप में उपयोग की जाने वाली सभी Firebase लाइब्रेरी उस BoM संस्करण में मैप किए गए संस्करणों में अपडेट हो जाएंगी।

यह जानने के लिए कि कौन से फायरबेस लाइब्रेरी संस्करण किसी विशिष्ट BoM संस्करण में मैप किए गए हैं, उस BoM संस्करण के लिए रिलीज़ नोट देखें। यदि आपको किसी अन्य BoM संस्करण की तुलना में एक BoM संस्करण में मैप किए गए लाइब्रेरी संस्करणों की तुलना करने की आवश्यकता है, तो नीचे दिए गए तुलना विजेट का उपयोग करें।

BoM प्लेटफॉर्म के लिए ग्रैडल के समर्थन के बारे में और जानें।

अपने मॉड्यूल (ऐप-लेवल) ग्रैडल फ़ाइल (आमतौर पर app/build.gradle ) में निर्भरता घोषित करने के लिए फायरबेस Android BoM का उपयोग करने का तरीका यहां बताया गया है। BoM का उपयोग करते समय, आप निर्भरता पंक्तियों में अलग-अलग लाइब्रेरी संस्करण निर्दिष्ट नहीं करते हैं।

dependencies {
  // Import the BoM for the Firebase platform
  implementation platform('com.google.firebase:firebase-bom:32.1.0')

  // Declare the dependencies for the desired Firebase products without specifying versions
  // For example, declare the dependencies for Firebase Authentication and Cloud Firestore
  implementation 'com.google.firebase:firebase-auth'
  implementation 'com.google.firebase:firebase-firestore'
}

यहाँ Firebase Android BoM का उपयोग करने के बारे में अक्सर पूछे जाने वाले प्रश्न दिए गए हैं:

फायरबेस बीओएम संस्करणों की तुलना करें

कोटलिन एक्सटेंशन (KTX) लाइब्रेरी

फायरबेस कोटलिन एक्सटेंशन (केटीएक्स) लाइब्रेरी बेस फायरबेस एसडीके के छोटे साथी हैं जो आपको सुंदर और मुहावरेदार कोटलिन कोड लिखने की अनुमति देते हैं।

अपने ऐप में KTX लाइब्रेरी का उपयोग करने के लिए, -ktx प्रत्यय को शामिल करने के लिए अपनी निर्भरता बदलें। प्रत्येक केटीएक्स लाइब्रेरी स्वचालित रूप से बेस लाइब्रेरी पर निर्भरता रखती है, इसलिए आपके ऐप में दोनों निर्भरताओं को शामिल करने की कोई आवश्यकता नहीं है।

dependencies {
  // Import the BoM for the Firebase platform (learn more)
  implementation platform('com.google.firebase:firebase-bom:32.1.0')

  // Declare the base library
  implementation 'com.google.firebase:firebase-analytics'

  // Declare the KTX library instead (which automatically has a dependency on the base library)
  implementation 'com.google.firebase:firebase-analytics-ktx'
}

प्रत्येक KTX लाइब्रेरी बेस लाइब्रेरी के विभिन्न सिंटैक्टिक एक्सटेंशन प्रदान करती है। उदाहरण के लिए, एनालिटिक्स केटीएक्स पुस्तकालय घटनाओं को लॉग करना आसान बनाता है:

पहले (बेस लाइब्रेरी का उपयोग करके)

val analytics = FirebaseAnalytics.getInstance();
val bundle = Bundle();
bundle.putString(FirebaseAnalytics.Param.ITEM_ID, id);
bundle.putString(FirebaseAnalytics.Param.ITEM_NAME, name);
bundle.putString(FirebaseAnalytics.Param.CONTENT_TYPE, "image");
analytics.logEvent(FirebaseAnalytics.Event.SELECT_ITEM, bundle);

के बाद (इसके बजाय KTX लाइब्रेरी का उपयोग करके)

firebaseAnalytics.logEvent(FirebaseAnalytics.Event.SELECT_ITEM) {
    param(FirebaseAnalytics.Param.ITEM_ID, id)
    param(FirebaseAnalytics.Param.ITEM_NAME, name)
    param(FirebaseAnalytics.Param.CONTENT_TYPE, "image")
}

फायरबेस एमएल और ऐप इंडेक्सिंग को छोड़कर सभी फायरबेस उत्पाद केटीएक्स लाइब्रेरी की पेशकश करते हैं।

यदि आपने अभी तक नहीं किया है, तो KTX पुस्तकालयों के लिए API संदर्भ दस्तावेज़ देखें।

फ़ीचर मॉड्यूल और प्ले फ़ीचर डिलीवरी

मई 2021 (Firebase BoM v28.0.0) तक, Firebase Android SDKs का उपयोग डायनामिक फीचर मॉड्यूल में किया जा सकता है जो आपके बेस एप्लिकेशन मॉड्यूल से अलग से इंस्टॉल किए जाते हैं।

डायनेमिक फीचर मॉड्यूल के लिए समर्थन सक्षम करने के लिए, अपने बेस मॉड्यूल की build.gradle फ़ाइल में निम्नलिखित निर्भरता जोड़ें:

dependencies {
  implementation 'com.google.firebase:firebase-dynamic-module-support:16.0.0-beta03'
}

अब जब आपने गतिशील मॉड्यूल समर्थन जोड़ लिया है, तो आप अपने ऐप के मॉड्यूल की सुविधा के लिए फायरबेस एसडीके निर्भरता (फायरबेस बीओएम के साथ या उसके बिना) जोड़ सकते हैं और सामान्य रूप से उनका उपयोग कर सकते हैं।

उदाहरण के लिए, यदि आपका एप्लिकेशन किसी विशिष्ट रीयलटाइम सुविधा को सशक्त बनाने के लिए रीयलटाइम डेटाबेस का उपयोग करता है, तो आप बेस मॉड्यूल के बजाय फीचर मॉड्यूल के build.gradle में firebase-database निर्भरता जोड़ सकते हैं। इससे अधिकांश उपयोगकर्ताओं के लिए डाउनलोड आकार कम हो जाएगा।

फ़ीचर मॉड्यूल में Firebase SDKs का उपयोग करते समय निम्नलिखित चेतावनियों से अवगत रहें:

  • डायनामिक लिंक्स या फायरबेस इन-ऐप मैसेजिंग जैसे उत्पाद जो एनालिटिक्स first_open इवेंट पर भरोसा करते हैं, डायनामिक फीचर मॉड्यूल में उपयोग किए जाने पर इस ईवेंट को याद कर सकते हैं।

  • क्लाउड फायरस्टोर और ऑथेंटिकेशन का एक साथ उपयोग करते समय, आपको हमेशा उन दोनों को एक ही मॉड्यूल में शामिल करना चाहिए। यदि यह संभव नहीं है, तो सुनिश्चित करें कि प्रमाणीकरण Cloud Firestore से पहले लोड किया गया है; अन्यथा, कुछ क्लाउड फायरस्टार संचालनों में गलत प्रमाणीकरण स्थिति हो सकती है।

  • डायनामिक फ़ीचर मॉड्यूल की निर्भरता के रूप में firebase-crashlytics-ndk उपयोग करते समय, आपको अपने ऐप की build.gradle फ़ाइल में unstrippedNativeLibsDir गुण सेट करने की आवश्यकता होती है, जैसा कि Crashlytics NDK दस्तावेज़ीकरण में बताया गया है।

फीचर मॉड्यूल और प्ले फीचर डिलीवरी के बारे में अधिक जानकारी के लिए, प्ले फीचर डिलीवरी का अवलोकन देखें।

Google सेवाएं ग्रेडल प्लगइन बनाम Google Play सेवाएं बनाम Google Play Store

Google, Firebase, और Android पारिस्थितिकी तंत्र के कई हिस्सों में समान नामकरण परंपराएँ हैं। यहाँ प्रत्येक के लिए एक संक्षिप्त विवरण दिया गया है:

Google सेवाएं ग्रेडल प्लगइन
एक ग्रैडल प्लगइन ( com.google.gms.google-services ) जो यह सुनिश्चित करने के लिए बिल्ड समय पर चलता है कि आपके ऐप में Firebase और Google API तक पहुँचने के लिए सही कॉन्फ़िगरेशन है
इसके नाम के बावजूद, इस प्लगइन का Google Play सेवाओं से कोई संबंध नहीं है (अगली प्रविष्टि देखें) और रनटाइम पर आपके ऐप की क्षमताओं पर इसका कोई प्रभाव नहीं पड़ता है।
यह प्लग-इन google-services.json फ़ाइल को भी प्रोसेस करता है जिसे आप Firebase सेट अप करने के भाग के रूप में अपने ऐप में जोड़ते हैं। Google सेवाओं के ग्रेडल प्लगइन के बारे में अधिक जानें।
Google Play सेवाएं
एक अदृश्य पृष्ठभूमि सेवा जो एंड्रॉइड डिवाइस पर चलती है और डिवाइस पर ऐप्स के लिए कई सामान्य Google एपीआई (जैसे Google मानचित्र और Google साइन इन) प्रदान करती है
इन सामान्य एपीआई को एक ही सेवा में केंद्रीकृत करके, यह अन्य ऐप्स के आकार को कम करता है और एक डिवाइस को ओएस अपडेट के बिना स्वचालित सुरक्षा अपडेट और फीचर एन्हांसमेंट प्राप्त करने की अनुमति देता है। Google Play सेवाओं के बारे में अधिक जानें।
गूगल प्ले स्टोर
Android डिवाइस पर ऐप, मूवी, किताबें और बहुत कुछ डाउनलोड करने के लिए एक स्टोर
एक डेवलपर के रूप में, आप Google Play कंसोल के माध्यम से अपने ऐप के वितरण, रिलीज़ आदि का प्रबंधन करते हैं। अगर किसी डिवाइस में Google Play Store है, तो वह Google Play सेवाएं भी चला रहा है (पिछली प्रविष्टि देखें)। डेवलपर के लिए Google Play Store के बारे में और जानें।
Google Play गेम्स सेवाएं
मोबाइल गेम डेवलपर्स के लिए एपीआई का एक सेट
Google Play गेम्स सेवाओं और अपने Google Play गेम्स सेवाओं प्रोजेक्ट के साथ Firebase को एकीकृत करने के तरीके के बारे में और जानें।

Firebase Android SDKs के लिए ओपन सोर्स संसाधन

फायरबेस ओपन सोर्स विकास का समर्थन करता है, और हम सामुदायिक योगदान और प्रतिक्रिया को प्रोत्साहित करते हैं।

फायरबेस एंड्रॉइड एसडीके

अधिकांश Firebase Android SDK हमारे सार्वजनिक Firebase GitHub रिपॉजिटरी में ओपन सोर्स लाइब्रेरी के रूप में विकसित किए गए हैं। हम शेष निजी रूप से विकसित फायरबेस लाइब्रेरी को जल्द ही हमारे सार्वजनिक गिटहब में स्थानांतरित करने के लिए सक्रिय रूप से काम कर रहे हैं!

त्वरित प्रारंभ नमूने

फायरबेस एंड्रॉइड पर अधिकांश फायरबेस एपीआई के लिए क्विकस्टार्ट नमूनों का संग्रह रखता है। इन क्विकस्टार्ट को हमारे सार्वजनिक फायरबेस गिटहब क्विकस्टार्ट रिपॉजिटरी में खोजें।

आप प्रत्येक क्विकस्टार्ट को Android स्टूडियो प्रोजेक्ट के रूप में खोल सकते हैं, फिर उन्हें मोबाइल डिवाइस या वर्चुअल डिवाइस (AVD) पर चला सकते हैं। या आप फायरबेस एसडीके का उपयोग करने के लिए इन क्विकस्टार्ट्स को उदाहरण कोड के रूप में उपयोग कर सकते हैं।

रुचि के अन्य विषय