تخزِّن قاعدة بيانات Firebase في الوقت الفعلي البيانات وتتم مزامنتها باستخدام قاعدة بيانات NoSQL في السحابة الإلكترونية. تتم مزامنة البيانات بين جميع العملاء في الوقت الفعلي، وتظل متاحة عندما يصبح تطبيقك غير متصل بالإنترنت.
قبل البدء
قبل أن تتمكّن من استخدام Firebase Realtime Database، عليك إجراء ما يلي:
تسجيل مشروع C++ وإعداده لاستخدام Firebase
إذا كان مشروع C++ يستخدم Firebase، يكون قد تم تسجيله وإعداده لاستخدام Firebase.
إضافة حزمة Firebase C++ SDK إلى مشروع C++
يُرجى العِلم أنّ إضافة Firebase إلى مشروع C++ تتضمّن مهامًا في كلّ من Firebase وحدة تحكّم ومشروع C++ المفتوح (على سبيل المثال، يمكنك تنزيل ملفات إعداد Firebase من وحدة التحكّم، ثم نقلها إلى مشروع C++).
إنشاء قاعدة بيانات
في وحدة التحكّم Firebase، انتقِل إلى قواعد البيانات ومساحة التخزين > قاعدة بيانات الوقت الفعلي.
انقر على إنشاء قاعدة بيانات.
اختَر وضعًا لبدء استخدام Firebase Security Rules
- وضع الاختبار
هذا الوضع مناسب للبدء باستخدام مكتبات العملاء على الأجهزة الجوّالة والويب، ولكنّه يسمح لأي مستخدم بقراءة بياناتك والكتابة فوقها. بعد الاختبار، احرص على مراجعة قسم التعرّف على قواعد قاعدة بيانات Firebase في الوقت الفعلي.
- .
للبدء باستخدام حزمة تطوير البرامج (SDK) للويب أو Apple أو Android، اختَر testmode.
- وضع القفل
يمنع هذا الوضع جميع عمليات القراءة والكتابة من عملاء الأجهزة الجوّالة والويب. سيظل بإمكان خوادم التطبيقات التي تم التحقّق من هويتها الوصول إلى قاعدة بياناتك.
اختَر موقعًا جغرافيًا لقاعدة البيانات.
استنادًا إلى الـ موقع لقاعدة البيانات، سيكون الـ URL لقاعدة البيانات الجديدة بأحد الأشكال التالية:
(لقواعد البيانات فيDATABASE_NAME.firebaseio.comus-central1) (لقواعد البيانات في جميع المواقع الجغرافية الأخرى)DATABASE_NAME.REGION.firebasedatabase.app
انقر على تم.
عند تفعيل Realtime Database، يتم أيضًا تفعيل واجهة برمجة التطبيقات في Cloud API Manager.
إنشاء firebase::App وإعداده
قبل أن تتمكّن من الوصول إلى Realtime Database، عليك إنشاء
firebase::App وإعداده.
ضمِّن ملف العنوان لـ firebase::App:
#include "firebase/app.h"
Android
أنشئ firebase::App، مع تمرير بيئة JNI ومرجع jobject إلى نشاط Java كمعلّمات:
app = ::firebase::App::Create(::firebase::AppOptions("APPLICATION NAME"), jni_env, activity);
لنظام التشغيل iOS+
أنشئ 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 إلى تطبيقك للتحكّم في الوصول إلى قاعدة البيانات.
الخطوات التالية
تعرَّف على كيفية تنظيم البيانات لـ Realtime Database.
استعِدّ لإطلاق تطبيقك:
- اضبط تنبيهات الميزانية لمشروعك في وحدة التحكّم Google Cloud.
- راقِب لوحة بيانات الاستخدام والفوترة في وحدة التحكّم Firebase للحصول على صورة عامة عن استخدام مشروعك لخدمات Firebase المتعددة. يمكنك أيضًا الانتقال إلى لوحة بيانات Realtime Database الاستخدام للحصول على معلومات أكثر تفصيلاً عن الاستخدام.
- راجِع قائمة التحقق من إطلاق Firebase.
المشاكل المعروفة
- على منصات الكمبيوتر المكتبي (Windows وMac وLinux)، تستخدم Firebase C++ SDK واجهة REST للوصول إلى قاعدة بياناتك. لهذا السبب، عليك الإعلان عن الفهارس التي تستخدمها مع Query::OrderByChild() على الكمبيوتر المكتبي، وإلا سيتعذّر على المستمعين العمل.
- لا يتيح إصدار سير عمل الكمبيوتر المكتبي من Realtime Database الاستجابة استخدام التطبيق بلا إنترنت أو ميزة الاحتفاظ بالبيانات.