C++ के लिए, Firebase रीयल टाइम डेटाबेस का इस्तेमाल शुरू करें

Firebase रीयलटाइम डेटाबेस, NoSQL क्लाउड डेटाबेस का इस्तेमाल करके डेटा को सेव और सिंक करता है. डेटा को रीयल टाइम में सभी क्लाइंट के साथ सिंक किया जाता है. साथ ही, जब आपका ऐप्लिकेशन ऑफ़लाइन हो जाता है, तब भी डेटा उपलब्ध रहता है.

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

Firebase Realtime Database का इस्तेमाल करने से पहले, आपको ये काम करने होंगे:

  • अपने C++ प्रोजेक्ट को रजिस्टर करें और Firebase का इस्तेमाल करने के लिए इसे कॉन्फ़िगर करें.

    अगर आपके C++ प्रोजेक्ट में पहले से ही Firebase का इस्तेमाल किया जा रहा है, तो यह पहले से ही Firebase के लिए रजिस्टर और कॉन्फ़िगर किया गया है.

  • अपने C++ प्रोजेक्ट में Firebase C++ SDK जोड़ें.

ध्यान दें कि C++ प्रोजेक्ट को Firebase से जोड़ने के लिए, आपको Firebase कंसोल और खुले हुए C++ प्रोजेक्ट, दोनों में टास्क पूरे करने होंगे. उदाहरण के लिए, आपको कंसोल से Firebase कॉन्फ़िगरेशन फ़ाइलें डाउनलोड करनी होंगी. इसके बाद, उन्हें अपने C++ प्रोजेक्ट में ले जाना होगा.

डेटाबेस बनाना

  1. Firebase कंसोल के Realtime Database सेक्शन पर जाएं. आपको कोई मौजूदा Firebase प्रोजेक्ट चुनने के लिए कहा जाएगा. डेटाबेस बनाने का वर्कफ़्लो अपनाएं.

  2. अपने Firebase Security Rules के लिए, कोई शुरुआती मोड चुनें:

    टेस्ट मोड

    मोबाइल और वेब क्लाइंट लाइब्रेरी का इस्तेमाल शुरू करने के लिए यह सही है. हालांकि, इससे कोई भी व्यक्ति आपका डेटा पढ़ सकता है और उसे बदल सकता है. टेस्टिंग के बाद, Firebase Realtime Database के नियमों को समझना सेक्शन को ज़रूर पढ़ें.

    वेब, Apple या Android SDK टूल का इस्तेमाल शुरू करने के लिए, testmode चुनें.

    लॉक मोड

    यह कुकी, मोबाइल और वेब क्लाइंट से सभी तरह के पढ़ने और लिखने के अनुरोधों को अस्वीकार करती है. पुष्टि किए गए आपके ऐप्लिकेशन सर्वर, अब भी आपके डेटाबेस को ऐक्सेस कर सकते हैं.

  3. डेटाबेस के लिए कोई जगह चुनें.

    डेटाबेस की जगह के आधार पर, नए डेटाबेस का यूआरएल इनमें से किसी एक फ़ॉर्म में होगा:

    • DATABASE_NAME.firebaseio.com (us-central1 में मौजूद डेटाबेस के लिए)

    • DATABASE_NAME.REGION.firebasedatabase.app (अन्य सभी जगहों पर मौजूद डेटाबेस के लिए)

  4. हो गया पर क्लिक करें.

Realtime Database को चालू करने पर, Cloud API Manager में भी एपीआई चालू हो जाता है.

firebase::App ऑब्जेक्ट बनाना और उसे शुरू करना

Realtime Database को ऐक्सेस करने से पहले, आपको firebase::App बनाना और उसे शुरू करना होगा.

firebase::App के लिए हेडर फ़ाइल शामिल करें:

#include "firebase/app.h"
AndroidiOS+

firebase::App बनाएं. इसके लिए, JNI एनवायरमेंट और Java Activity के jobject रेफ़रंस को आर्ग्युमेंट के तौर पर पास करें:

app = ::firebase::App::Create(::firebase::AppOptions("APPLICATION NAME"), jni_env, activity);

firebase::App बनाएं:

app = ::firebase::App::Create(::firebase::AppOptions("APPLICATION NAME"));

firebase::database::Database क्लास को ऐक्सेस करना

firebase::database::Database, Firebase Realtime Database C++ SDK के लिए एंट्री पॉइंट है.

::firebase::database::Database *database = ::firebase::database::Database::GetInstance(app);

अगर आपने नियमों के लिए सार्वजनिक ऐक्सेस का इस्तेमाल करने का विकल्प चुना है, तो डेटा सेव करने और वापस पाने से जुड़े सेक्शन पर जाएं.

सीमित ऐक्सेस सेट अप करना

अगर आपको सार्वजनिक ऐक्सेस का इस्तेमाल नहीं करना है, तो अपने ऐप्लिकेशन में Firebase Authentication जोड़कर डेटाबेस के ऐक्सेस को कंट्रोल किया जा सकता है.

अगले चरण

ज्ञात समस्याएं

  • डेस्कटॉप प्लैटफ़ॉर्म (Windows, Mac, Linux) पर, Firebase C++ SDK, आपके डेटाबेस को ऐक्सेस करने के लिए REST का इस्तेमाल करता है. इस वजह से, आपको डेस्कटॉप पर Query::OrderByChild() के साथ इस्तेमाल किए गए इंडेक्स का एलान करना होगा. ऐसा न करने पर, आपके लिसनर काम नहीं करेंगे.
  • Realtime Database के डेस्कटॉप वर्कफ़्लो वर्शन में, ऑफ़लाइन या लगातार काम करने की सुविधा नहीं होती.