Google is committed to advancing racial equity for Black communities. See how.
इस पेज का अनुवाद Cloud Translation API से किया गया है.
Switch to English

फायरबेस परियोजनाओं को समझें

यह पृष्ठ फायरबेस परियोजनाओं के बारे में कई महत्वपूर्ण अवधारणाओं का संक्षिप्त साक्षात्कार प्रदान करता है। जब उपलब्ध हो, तो सुविधाओं, सेवाओं और अन्य प्लेटफार्मों के बारे में अधिक विस्तृत जानकारी प्राप्त करने के लिए लिंक का अनुसरण करें। इस पृष्ठ के निचले भाग में, फायरबेस परियोजनाओं के लिए सामान्य सर्वोत्तम प्रथाओं की एक सूची खोजें।

फायरबेस परियोजनाओं, ऐप्स और उत्पादों के बीच संबंध

फायरबेस परियोजना फायरबेस के लिए शीर्ष स्तर की इकाई है। किसी प्रोजेक्ट में, आप अपने iOS, Android, या वेब ऐप को रजिस्टर करके Firebase ऐप बनाते हैं। फायरबेज़ के साथ अपने ऐप को पंजीकृत करने के बाद, आप फ़ायरबॉज़ उत्पादों की किसी भी संख्या के लिए Firebase SDKs जोड़ सकते हैं, जैसे एनालिटिक्स, क्लाउड फायरस्टार, प्रदर्शन मॉनिटरिंग, या रिमोट कॉन्फ़िगरेशन।

इस प्रक्रिया के बारे में अधिक विस्तृत जानकारी प्राप्त करना प्रारंभ करना मार्गदर्शिकाएँ ( iOS | Android | वेब | एकता | C ++ ) में जानें।

फायरबेस परियोजनाओं और Google क्लाउड प्लेटफ़ॉर्म (GCP) के बीच संबंध

जब आप फायरबेस कंसोल में एक नया फायरबेस प्रोजेक्ट बनाते हैं, तो आप वास्तव में पर्दे के पीछे एक Google क्लाउड प्लेटफॉर्म (जीसीपी) प्रोजेक्ट बना रहे होते हैं। आप GCP प्रोजेक्ट को डेटा, कोड, कॉन्फ़िगरेशन और सेवाओं के लिए वर्चुअल कंटेनर के रूप में सोच सकते हैं। फायरबेस परियोजना एक जीसीपी परियोजना है जिसमें अतिरिक्त फायरबेस-विशिष्ट कॉन्फ़िगरेशन और सेवाएं हैं। आप पहले GCP प्रोजेक्ट भी बना सकते हैं, फिर बाद में प्रोजेक्ट में Firebase जोड़ें।

एक Firebase परियोजना के बाद से एक जीसीपी परियोजना है:

फायरबेस परियोजना की स्थापना और एप्स का पंजीकरण

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

प्रोजेक्ट स्थापित करने और ऐप्स को पंजीकृत करने से पहले कुछ सामान्य प्रोजेक्ट-स्तरीय सर्वोत्तम प्रथाओं (इस पृष्ठ के नीचे) की समीक्षा करना सुनिश्चित करें।

प्रोजेक्ट का नाम

जब आप एक परियोजना बनाते हैं, तो आप एक परियोजना का नाम प्रदान करते हैं। यह पहचानकर्ता फायरबेस कंसोल , जीसीपी कंसोल और फायरबेस सीएलआई में एक प्रोजेक्ट के लिए केवल आंतरिक नाम है । परियोजना का नाम किसी भी सार्वजनिक रूप से दिखाई देने वाले फायरबेस या जीसीपी उत्पाद, सेवा या संसाधन में उजागर नहीं होता है; यह आपको कई परियोजनाओं के बीच आसानी से भेद करने में मदद करने के लिए कार्य करता है।

आप फायरबेस कंसोल की प्रोजेक्ट सेटिंग्स में किसी भी समय प्रोजेक्ट का नाम संपादित कर सकते हैं। प्रोजेक्ट का नाम शीर्ष फलक में प्रदर्शित होता है।

परियोजना संख्या

फायरबेस प्रोजेक्ट (और इससे जुड़ी जीसीपी परियोजना ) की एक परियोजना संख्या है । यह परियोजना के लिए वैश्विक रूप से अद्वितीय विहित पहचानकर्ता है। इंटीग्रेशन को कॉन्फ़िगर करने और / या फायरबेस, Google या तृतीय-पक्ष सेवाओं के लिए एपीआई कॉल करते समय इस पहचानकर्ता का उपयोग करें।

एपीआई कॉल और प्रोजेक्ट नंबर

कई एपीआई कॉल के लिए, आपको एक प्रोजेक्ट के लिए एक विशिष्ट पहचानकर्ता शामिल करना होगा। हालाँकि कई API प्रोजेक्ट ID को स्वीकार करते हैं, लेकिन यह अनुशंसा की जाती है कि आप Firebase, Google या तृतीय-पक्ष सेवाओं के लिए API कॉल करने के लिए प्रोजेक्ट नंबर का उपयोग करें।

Google के AIP 2510 मानक में प्रोजेक्ट पहचानकर्ताओं, विशेष रूप से प्रोजेक्ट नंबर का उपयोग करने के बारे में अधिक जानें।

प्रोजेक्ट नंबर ज्ञात करें

  • फायरबेस कंसोल: क्लिक करें प्रोजेक्ट सेटिंग्स । प्रोजेक्ट नंबर शीर्ष फलक में प्रदर्शित होता है।

  • फायरबेस CLI: रन firebase projects:list । प्रोजेक्ट नंबर आपके खाते से जुड़ी सभी फायरबेस परियोजनाओं के साथ प्रदर्शित किया जाता है।

  • Firebase Management REST API: कॉल projects.list । प्रतिक्रिया निकाय में FirebaseProject ऑब्जेक्ट में प्रोजेक्ट नंबर है।

प्रोजेक्ट आई.डी.

फायरबेस प्रोजेक्ट (और इससे जुड़ी जीसीपी परियोजना ) में एक परियोजना आईडी है । यह फायरबेस और जीसीपी के सभी के लिए एक उपयोगकर्ता द्वारा परिभाषित विशिष्ट पहचानकर्ता है। जब आप एक Firebase प्रोजेक्ट बनाते हैं, तो Firebase स्वचालित रूप से प्रोजेक्ट के लिए एक अद्वितीय ID प्रदान करता है, लेकिन आप प्रोजेक्ट सेटअप के दौरान इसे संपादित कर सकते हैं। इस पहचानकर्ता को आमतौर पर परियोजना को संदर्भित करने के लिए एक सुविधा उपनाम के रूप में माना जाना चाहिए।

यदि आप किसी प्रोजेक्ट को हटाते हैं, तो प्रोजेक्ट ID भी हटा दी जाती है और उसे किसी अन्य प्रोजेक्ट द्वारा फिर से उपयोग नहीं किया जा सकता है।

Firebase संसाधन और प्रोजेक्ट ID

उदाहरण के लिए, सार्वजनिक रूप से दृश्यमान Firebase संसाधनों में प्रोजेक्ट ID प्रदर्शित होती है:

  • डिफ़ॉल्ट होस्टिंग उपडोमेन - PROJECT_ID .web.app और PROJECT_ID .firebaseapp.com
  • डिफ़ॉल्ट रीयलटाइम डेटाबेस URL - PROJECT_ID .firebaseio.com
  • डिफ़ॉल्ट क्लाउड संग्रहण बाल्टी नाम - PROJECT_ID .appspot.com

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

फायरबेस सीएलआई और प्रोजेक्ट आईडी

कुछ उपयोग मामलों के लिए, आपके पास एक ही स्थानीय ऐप निर्देशिका से जुड़ी कई फायरबेस परियोजनाएं हो सकती हैं। इन स्थितियों में, जब आप का उपयोग Firebase CLI , आप पास करनी होगी --project साथ ध्वज firebase जो Firebase परियोजना आप के साथ बातचीत करना चाहते हैं संवाद करने के लिए आदेशों।

आप प्रत्येक फायरबेस प्रोजेक्ट के लिए एक प्रोजेक्ट उपनाम भी सेट कर सकते हैं ताकि आपको प्रोजेक्ट आईडी याद न रखें।

एपीआई कॉल और प्रोजेक्ट आईडी

कई एपीआई कॉल के लिए, आपको एक परियोजना के लिए एक विशिष्ट पहचानकर्ता शामिल करना होगा। हालाँकि कई API प्रोजेक्ट ID को स्वीकार करते हैं, लेकिन यह अनुशंसा की जाती है कि आप Firebase, Google या तृतीय-पक्ष सेवाओं के लिए API कॉल करने के लिए प्रोजेक्ट नंबर का उपयोग करें।

Google के AIP 2510 मानक में प्रोजेक्ट पहचानकर्ताओं, विशेष रूप से प्रोजेक्ट नंबर का उपयोग करने के बारे में अधिक जानें।

प्रोजेक्ट आईडी खोजें

  • फायरबेस कंसोल: क्लिक करें प्रोजेक्ट सेटिंग्स । प्रोजेक्ट ID को शीर्ष फलक में प्रदर्शित किया गया है।

  • फायरबेस CLI: रन firebase projects:list । प्रोजेक्ट आईडी आपके खाते से जुड़ी सभी फायरबेस परियोजनाओं के साथ प्रदर्शित की जाती है।

  • फायरबेस मैनेजमेंट रीस्ट एपीआई: कॉल projects.list । प्रतिक्रिया निकाय में FirebaseProject ऑब्जेक्ट में प्रोजेक्ट ID है।

फायरबेस फ़ाइल और ऑब्जेक्ट्स को कॉन्फ़िगर करता है

जब आप फायरबेस प्रोजेक्ट के साथ एक ऐप रजिस्टर करते हैं, तो फायरबेस कंसोल फायरबेस कॉन्फ़िगरेशन फाइल (आईओएस / एंड्रॉइड ऐप) या एक कॉन्फ़िगरेशन ऑब्जेक्ट (वेब ​​ऐप) प्रदान करता है जिसे आप सीधे अपने स्थानीय ऐप निर्देशिका में जोड़ते हैं।

  • IOS ऐप्स के लिए, आप एक GoogleService-Info.plist कॉन्फ़िगरेशन फ़ाइल जोड़ें।
  • Android ऐप्स के लिए, आप एक google-services.json कॉन्फ़िगरेशन फ़ाइल जोड़ें।
  • वेब ऐप्स के लिए, आप फायरबेस कॉन्फ़िगरेशन ऑब्जेक्ट जोड़ें।

किसी भी समय, आप एक ऐप के फायरबेस कॉन्फ़िगरेशन फ़ाइल या ऑब्जेक्ट प्राप्त कर सकते हैं।

फायरबेस कॉन्फ़िगरेशन फ़ाइल या ऑब्जेक्ट एक ऐप को विशिष्ट फायरबेस प्रोजेक्ट और उसके संसाधनों (डेटाबेस, स्टोरेज बकेट, आदि) के साथ जोड़ देता है। कॉन्फ़िगरेशन में "फायरबेस विकल्प" शामिल हैं, जो फायरबेस सर्वर एपीआई के साथ संवाद करने और फायरबेस प्रोजेक्ट और फायरबेस ऐप के साथ क्लाइंट डेटा को जोड़ने के लिए फायरबेस और Google सेवाओं द्वारा आवश्यक पैरामीटर हैं। यहाँ आवश्यक हैं, न्यूनतम "फायरबेस विकल्प":

  • एपीआई कुंजी : एक साधारण एन्क्रिप्टेड स्ट्रिंग जिसका उपयोग कुछ एपीआई को कॉल करते समय किया जाता है, जिसे निजी उपयोगकर्ता डेटा (उदाहरण के मूल्य: AIzaSyDOCAbC123dEf456GhI789jKl012-MnO ) तक पहुंचने की आवश्यकता नहीं होती है

  • प्रोजेक्ट आईडी : फायरबेस और जीसीपी के सभी के लिए परियोजना के लिए एक उपयोगकर्ता-निर्धारित अद्वितीय पहचानकर्ता। यह पहचानकर्ता कुछ फायरबेस संसाधनों के URL या नामों में दिखाई दे सकता है, लेकिन इसे आमतौर पर परियोजना को संदर्भित करने के लिए एक सुविधा उपनाम के रूप में माना जाना चाहिए। (उदाहरण मूल्य: myapp-project-123 )

  • एप्लिकेशन आईडी ("AppID") : प्लेटफॉर्म-विशिष्ट प्रारूप के साथ फायरबेस के सभी में फायरबेस एप्लिकेशन के लिए विशिष्ट पहचानकर्ता:

    • फायरबेस आईओएस ऐप: GOOGLE_APP_ID (उदाहरण मूल्य: 1:1234567890:ios:321abc456def7890 )
      यह एक एप्पल बंडल आईडी नहीं है।
    • Firebase Android ऐप्स: mobilesdk_app_id (उदाहरण मूल्य: 1:1234567890:android:321abc456def7890 )
      यह एक Android पैकेज का नाम या Android एप्लिकेशन आईडी नहीं है।
    • Firebase वेब ऐप्स: appId (उदाहरण मूल्य: 1:65211879909:web:3ae38ef1cdcb2e01fe5f0c )

Firebase config फ़ाइल या ऑब्जेक्ट की सामग्री को सार्वजनिक माना जाता है, जिसमें ऐप के प्लेटफ़ॉर्म-विशिष्ट आईडी (iOS बंडल आईडी या एंड्रॉइड पैकेज नाम) और API कुंजी, प्रोजेक्ट आईडी, रीयलटाइम डेटाबेस URL और जैसे Firebase प्रोजेक्ट-विशिष्ट मान शामिल हैं, भंडारण बाल्टी नाम। इसे देखते हुए, Realtime Database , Cloud Firestore , और Cloud Storage में अपने डेटा और फ़ाइलों की सुरक्षा के लिए Firebase Security Rules का उपयोग करें

ओपन सोर्स प्रोजेक्ट्स के लिए, हम आम तौर पर ऐप के फायरबेस कॉन्फ़िगरेशन फ़ाइल या स्रोत नियंत्रण में ऑब्जेक्ट सहित अनुशंसा नहीं करते हैं, क्योंकि ज्यादातर मामलों में, आपके उपयोगकर्ताओं को अपनी फायरबेस परियोजनाएं बनानी चाहिए और अपने ऐप को अपने फायरबैस संसाधनों (अपने स्वयं के फायरबेस कॉन्फ़िगरेशन के माध्यम से) को इंगित करना चाहिए। फ़ाइल या वस्तु)।

फायरबेस परियोजना का प्रबंधन

सामान्य प्रोजेक्ट-स्तरीय सर्वोत्तम प्रथाओं (इस पृष्ठ के निचले भाग पर) पर विचार के लिए समीक्षा करना सुनिश्चित करें कि आप कैसे फ़ायरफ़ॉक्स परियोजना का प्रबंधन कर सकते हैं।

किसी प्रोजेक्ट को प्रबंधित करने के लिए उपकरण

फायरबेस कंसोल

Firebase कंसोल , Firebase उत्पादों, ऐप्स और प्रोजेक्ट-स्तरीय सेटिंग्स के प्रबंधन के लिए सबसे समृद्ध वातावरण प्रदान करता है।

Firebase कंसोल - प्रोजेक्ट ओवरव्यू स्क्रीन

कंसोल के बाईं ओर पैनल में फायरबेस उत्पादों को सूचीबद्ध किया गया है, जो शीर्ष-स्तरीय श्रेणियों द्वारा आयोजित किया गया है। बाईं ओर के पैनल, पहुंच पर क्लिक करके एक परियोजना की सेटिंग के शीर्ष पर । किसी प्रोजेक्ट की सेटिंग में इंटीग्रेशन , एक्सेस परमिशन और बिलिंग शामिल हैं

कंसोल का मध्य बटन प्रदर्शित करता है जो विभिन्न प्रकार के ऐप को पंजीकृत करने के लिए सेटअप वर्कफ़्लोज़ लॉन्च करता है। आपके द्वारा Firebase का उपयोग शुरू करने के बाद, कंसोल का मुख्य क्षेत्र डैशबोर्ड में बदल जाता है जो आपके द्वारा उपयोग किए जाने वाले उत्पादों पर आंकड़े प्रदर्शित करता है।

फायरबेस सीएलआई (एक कमांड लाइन उपकरण)

फायरबेस के लिए फायरबेस होस्टिंग और क्लाउड फंक्शंस जैसे फायरबेस उत्पादों को कॉन्फ़िगर करने और प्रबंधित करने के लिए फायरबेस भी फायरबेस सीएलआई प्रदान करता है।

सीएलआई स्थापित करने के बाद, आपके पास वैश्विक firebase कमांड तक पहुंच है। अपने स्थानीय ऐप डायरेक्टरी को फायरबेस प्रोजेक्ट से जोड़ने के लिए सीएलआई का उपयोग करें, फिर फायरबेस-होस्टेड कंटेंट या अपडेट के नए संस्करणों को कार्य के लिए तैनात करें

फायरबेस मैनेजमेंट रेस्ट एपीआई

Firebase Management REST API का उपयोग करके, आप प्रोग्रामेटिक रूप से Firebase प्रोजेक्ट का प्रबंधन कर सकते हैं। उदाहरण के लिए, आप प्रोग्राम को प्रोजेक्ट के साथ रजिस्टर कर सकते हैं या उन ऐप्स को सूचीबद्ध कर सकते हैं जो पहले से पंजीकृत हैं ( iOS | Android- वेब )।

सामान्य सर्वोत्तम अभ्यास

किसी प्रोजेक्ट में ऐप्स जोड़ना

सुनिश्चित करें कि एक परियोजना के भीतर सभी ऐप एंड-यूज़र परिप्रेक्ष्य से एक ही एप्लिकेशन के प्लेटफ़ॉर्म वेरिएंट हैं । एक ही ऐप या गेम के आईओएस, एंड्रॉइड और वेब संस्करणों को एक ही फायरबेस प्रोजेक्ट के साथ पंजीकृत करना उचित है। किसी प्रोजेक्ट के सभी ऐप्स समान रूप से एक ही Firebase रिसोर्स (डेटाबेस, स्टोरेज बकेट आदि) को साझा करते हैं।

यदि आपके पास अलग-अलग आईओएस बंडल आईडी या एंड्रॉइड पैकेज नामों के साथ कई बिल्ड वेरिएंट हैं , तो आप प्रत्येक वेरिएंट को एक अलग फायरसेट प्रोजेक्ट के साथ पंजीकृत कर सकते हैं। हालाँकि, यदि आपके पास वैरबेस के समान संसाधनों को साझा करने वाले वेरिएंट हैं, तो उन्हें उसी फायरबेस प्रोजेक्ट के साथ पंजीकृत करें।

जबकि किसी परियोजना के भीतर ऐप्स की संख्या पर कोई प्रतिबंध नहीं है, ऐप को पंजीकृत करने से एक या अधिक अंतर्निहित OAuth 2.0 क्लाइंट लिंक बन सकते हैं। लगभग 30 क्लाइंट आईडी की सीमा है जो एक ही परियोजना के भीतर बनाई जा सकती है।

बहु किरायेदारी

कई अलग-अलग तार्किक स्वतंत्र एप्लिकेशन और / या वेब साइटों को एक ही प्रोजेक्ट से कनेक्ट करना (जिसे अक्सर "मल्टी-टेनेंसी" कहा जाता है) की सिफारिश नहीं की जाती है। मल्टी-टेनेंसी गंभीर कॉन्फ़िगरेशन और डेटा गोपनीयता संबंधी चिंताओं को जन्म दे सकती है, जिसमें एनालिटिक्स एकत्रीकरण, साझा प्रमाणीकरण, अत्यधिक जटिल डेटाबेस संरचनाओं के साथ अनपेक्षित मुद्दे और सुरक्षा नियमों के साथ कठिनाइयां शामिल हैं।

आम तौर पर, यदि ऐप्स का एक सेट समान डेटा और कॉन्फ़िगरेशन साझा नहीं करता है , तो प्रत्येक ऐप को एक अलग फायरबेस प्रोजेक्ट के साथ पंजीकृत करने पर दृढ़ता से विचार करें।

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

फायरबेस परियोजनाओं, ऐप्स और साइटों के लिए कुछ सामान्य सीमाएँ नोट करें:

  • प्रति खाता परियोजनाओं की संख्या

    • फ्री-टियर स्पार्क योजना - परियोजना-निर्माण कोटा परियोजनाओं की एक निचली गिनती (आमतौर पर लगभग 5-10) तक सीमित है।
    • भुगतान की योजना - जब तक संबंधित क्लाउड बिलिंग खाता अच्छी स्थिति में है, तब तक प्रति बिलिंग खाते में परियोजना-निर्माण कोटा काफी हद तक बढ़ जाता है।

    प्रोजेक्ट-निर्माण कोटा की सीमा शायद ही अधिकांश डेवलपर्स के लिए चिंता का विषय है, लेकिन यदि आवश्यक हो, तो आप प्रोजेक्ट कोटा में वृद्धि का अनुरोध कर सकते हैं

    विदित हो कि किसी परियोजना के पूर्ण विलोपन के लिए 30 दिनों की आवश्यकता होती है और जब तक परियोजना पूरी तरह से नष्ट नहीं हो जाती तब तक परियोजना कोटा की ओर जाती है।

  • प्रति प्रोजेक्ट ऐप्स की संख्या

    जबकि किसी परियोजना के भीतर ऐप्स की संख्या पर कोई प्रतिबंध नहीं है, ऐप को पंजीकृत करने से एक या अधिक अंतर्निहित OAuth 2.0 क्लाइंट लिंक बन सकते हैं। लगभग 30 क्लाइंट आईडी की सीमा है जो एक ही परियोजना के भीतर बनाई जा सकती है।

  • प्रति परियोजना होस्टिंग साइटों की संख्या

    फायरबेस होस्टिंग मल्टीसाइट फीचर प्रति प्रोजेक्ट अधिकतम 36 साइट का समर्थन करता है।

अपना ऐप लॉन्च कर रहा है