تخزِّن قاعدة بيانات Firebase في الوقت الفعلي البيانات وتُزامنها باستخدام قاعدة بيانات سحابة تشكلت باستخدام لغة الاستعلامات البنيوية (NoSQL). تتم مزامنة البيانات على جميع العملاء في الوقت الفعلي، وتظل متاحة عند إيقاف اتصال تطبيقك بالإنترنت.
قبل البدء
لاستخدام Firebase Realtime Database، عليك إجراء ما يلي:
سجِّل مشروع C++ وأعدّه لاستخدام Firebase.
إذا كان مشروعك على C++ يستخدم Firebase بالفعل، فإنه قد تم تسجيله وإعداده لـ Firebase.
أضِف حزمة تطوير البرامج Firebase C++ SDK إلى مشروع C++.
يُرجى العِلم أنّ إضافة Firebase إلى مشروع C++ الخاص بك تتطلّب تنفيذ مهام في كلّ من وحدة تحكّم Firebase ومشروع C++ المفتوح (على سبيل المثال، يمكنك تنزيل ملفات إعدادات Firebase من وحدة التحكّم، ثم نقلها إلى مشروع C++ الخاص بك).
إنشاء قاعدة بيانات
انتقِل إلى القسم Realtime Database في وحدة تحكّم Firebase. سيُطلب منك اختيار مشروع حالي في Firebase. اتّبِع سير عمل إنشاء قاعدة البيانات.
اختَر وضعًا أوليًا لتطبيق Firebase Security Rules:
- وضع الاختبار
جيدة لبدء استخدام مكتبات برامج الويب والجوَّال، ولكنها تسمح لأي شخص بقراءة بياناتك واستبدالها. بعد الاختبار، احرص على قراءة القسم فهم قواعد قاعدة بيانات Firebase في الوقت الفعلي .
لبدء استخدام حزمة تطوير البرامج (SDK) للويب أو Apple أو Android، اختَر وضع الاختبار.
- وضع القفل
يرفض جميع عمليات القراءة والكتابة من عملاء الويب والأجهزة الجوّالة. سيظل بإمكان خوادم التطبيقات المعتمَدة الوصول إلى قاعدة بياناتك.
اختَر موقعًا لقاعدة البيانات.
استنادًا إلى موقع قاعدة البيانات، سيكون عنوان URL لقاعدة البيانات الجديدة بأحد الأشكال التالية:
(لقاعدة بيانات فيDATABASE_NAME.firebaseio.com
us-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
هي نقطة دخول حزمة C++ SDK لتطبيق Firebase Realtime Database.
::firebase::database::Database *database = ::firebase::database::Database::GetInstance(app);
إذا اخترت استخدام إذن الوصول العلني لقواعدك، يمكنك الانتقال إلى الأقسام حول حفظ البيانات واستردادها.
إعداد ميزة "الوصول المحدود"
إذا كنت لا تريد استخدام إذن الوصول العلني، يمكنك إضافة Firebase Authentication إلى تطبيقك للتحكّم في إمكانية الوصول إلى قاعدة البيانات.
الخطوات التالية
تعرَّف على كيفية تنظيم البيانات في Realtime Database.
اطّلِع على قاعدة بياناتك في ملف برمجي في Firebase وحدة التحكّم.
الاستعداد لإطلاق تطبيقك:
- قم بإعداد تنبيهات الميزانية لمشروعك في وحدة التحكم Google Cloud.
- يمكنك مراقبة لوحة بيانات الاستخدام والفوترة في وحدة تحكّم Firebase للحصول على نظرة عامة على استخدام مشروعك على مستوى خدمات Firebase المتعددة. يمكنك أيضًا الانتقال إلى لوحة بيانات Realtime Database الاستخدام للحصول على معلومات استخدام أكثر تفصيلاً.
- راجِع قائمة التحقّق من إطلاق Firebase.
المشاكل المعروفة
- على منصات أجهزة الكمبيوتر المكتبي (Windows وMac وLinux)، تستخدم حزمة تطوير البرامج Firebase C++ بروتوكول REST للوصول إلى قاعدة بياناتك. ولهذا السبب، عليك تعريف الفهارس التي تستخدمها باستخدام Query::OrderByChild() على الكمبيوتر المكتبي وإلا لن تعمل أدوات الاستماع.
- لا يتيح إصدار سير العمل على الكمبيوتر المكتبي من Realtime Database إمكانية الوصول إلى البيانات بلا إنترنت أو الاحتفاظ بها.