Firebase प्रोजेक्ट को समझें

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

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

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

अपने प्लेटफ़ॉर्म के लिए आरंभ करने की मार्गदर्शिका में इस प्रक्रिया के बारे में अधिक विस्तृत जानकारी जानें:
आईओएस+ | एंड्रॉइड | वेब | एकता | सी++ | फड़फड़ाना

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

प्रोजेक्ट, इसके पंजीकृत ऐप्स और इसके प्रावधानित संसाधनों और सेवाओं सहित फायरबेस प्रोजेक्ट के बुनियादी पदानुक्रम को दर्शाने वाला आरेख यह आरेख फायरबेस प्रोजेक्ट के बुनियादी पदानुक्रम को दर्शाता है। यहां प्रमुख रिश्ते हैं:

  • फायरबेस प्रोजेक्ट आपके सभी ऐप्स और प्रोजेक्ट के लिए प्रावधानित किसी भी संसाधन और सेवाओं के लिए एक कंटेनर की तरह है।

  • एक फायरबेस प्रोजेक्ट में एक या अधिक फायरबेस ऐप्स पंजीकृत हो सकते हैं (उदाहरण के लिए, किसी ऐप के आईओएस और एंड्रॉइड दोनों संस्करण, या किसी ऐप के मुफ्त और भुगतान किए गए दोनों संस्करण)।

  • एक ही फायरबेस प्रोजेक्ट में पंजीकृत सभी फायरबेस ऐप्स शेयर करते हैं और उनके पास प्रोजेक्ट के लिए प्रावधानित सभी समान संसाधनों और सेवाओं तक पहुंच होती है। यहां कुछ उदाहरण दिए गए हैं:

    • एक ही फायरबेस प्रोजेक्ट में पंजीकृत सभी फायरबेस ऐप्स समान बैकएंड साझा करते हैं, जैसे फायरबेस होस्टिंग, प्रमाणीकरण, रीयलटाइम डेटाबेस, क्लाउड फायरस्टोर, क्लाउड स्टोरेज और क्लाउड फ़ंक्शंस।

    • एक ही फायरबेस प्रोजेक्ट में पंजीकृत सभी फायरबेस ऐप्स एक ही Google Analytics प्रॉपर्टी से जुड़े हैं, जहां प्रत्येक फायरबेस ऐप उस प्रॉपर्टी में एक अलग डेटा स्ट्रीम है।

फायरबेस परियोजनाओं और Google क्लाउड के बीच संबंध

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

ध्यान दें कि सभी फायरबेस प्रोजेक्ट के लिए, फायरबेस स्वचालित रूप से Google क्लाउड कंसोल में आपके प्रोजेक्ट के लिए लेबल पेज के भीतर firebase:enabled का एक लेबल जोड़ता है। हमारे FAQ में इस लेबल के बारे में और जानें।

चूँकि फायरबेस प्रोजेक्ट एक Google क्लाउड प्रोजेक्ट है :

  • आप फायरबेस कंसोल के साथ-साथ Google क्लाउड कंसोल और Google API कंसोल में किसी प्रोजेक्ट के साथ इंटरैक्ट कर सकते हैं।

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

  • किसी प्रोजेक्ट के लिए बिलिंग और अनुमतियाँ फायरबेस और Google क्लाउड पर साझा की जाती हैं।

  • किसी प्रोजेक्ट के लिए विशिष्ट पहचानकर्ता (जैसे प्रोजेक्ट नंबर और प्रोजेक्ट आईडी ) फायरबेस और Google क्लाउड पर साझा किए जाते हैं।

  • किसी प्रोजेक्ट को हटाने से वह फायरबेस और Google क्लाउड से हट जाता है।

फायरबेस प्रोजेक्ट स्थापित करना और ऐप्स पंजीकृत करना

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

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

फायरबेस प्रोजेक्ट के साथ इंटरैक्ट करना

उत्पाद एसडीके के अलावा, आप कई अलग-अलग टूल और इंटरफेस का उपयोग करके फायरबेस प्रोजेक्ट के साथ सीधे बातचीत कर सकते हैं।

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

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

फायरबेस कंसोल - प्रोजेक्ट अवलोकन स्क्रीन

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

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

ध्यान दें कि चूंकि फायरबेस प्रोजेक्ट भी एक Google क्लाउड प्रोजेक्ट है, आप पा सकते हैं कि विभिन्न कार्यों या उत्पादों के लिए आपको फायरबेस कंसोल के बजाय Google क्लाउड कंसोल का उपयोग करने की आवश्यकता होती है।

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

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

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

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

फ़ायरबेस प्रबंधन REST API का उपयोग करके, आप फ़ायरबेस प्रोजेक्ट को प्रोग्रामेटिक रूप से प्रबंधित कर सकते हैं। उदाहरण के लिए, आप किसी प्रोजेक्ट के साथ किसी ऐप को प्रोग्रामेटिक रूप से पंजीकृत कर सकते हैं या उन ऐप्स को सूचीबद्ध कर सकते हैं जो पहले से पंजीकृत हैं ( आईओएस+ | एंड्रॉइड | वेब )।

फायरबेस प्रोजेक्ट पहचानकर्ता

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

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

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

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

प्रोजेक्ट नंबर

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

यहां फायरबेस प्रोजेक्ट्स, ऐप्स और साइटों के लिए कुछ सामान्य सीमाएं दी गई हैं:

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

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

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

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

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

    फ़ायरबेस, फ़ायरबेस प्रोजेक्ट के भीतर फ़ायरबेस ऐप्स की कुल संख्या को 30 तक सीमित करता है।

    आपको यह सुनिश्चित करना चाहिए कि एकल फायरबेस प्रोजेक्ट के भीतर सभी फायरबेस ऐप्स अंतिम-उपयोगकर्ता परिप्रेक्ष्य से एक ही एप्लिकेशन के प्लेटफ़ॉर्म वेरिएंट हैं। हमारे सर्वोत्तम अभ्यास दस्तावेज़ों में बहु-किरायेदारी के बारे में और पढ़ें।

    FAQ में प्रति प्रोजेक्ट ऐप्स की सीमा के बारे में अधिक जानें।

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

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

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