بدء استخدام قاعدة بيانات Firebase في الوقت الفعلي لـ C++

تقوم قاعدة بيانات Firebase في الوقت الفعلي بتخزين البيانات ومزامنتها باستخدام قاعدة بيانات سحابة NoSQL. تتم مزامنة البيانات عبر جميع البرامج في الوقت الفعلي، وتظل متاحة عندما يصبح تطبيقك بلا اتصال.

قبل البدء

قبل أن تتمكّن من استخدام قاعدة بيانات Firebase في الوقت الفعلي، عليك إجراء ما يلي:

  • سجّل مشروع C++ الخاص بك واضبطه لاستخدام Firebase.

    إذا كان مشروعك على C++ يستخدم Firebase بالفعل، فإنه قد تم تسجيله وإعداده لـ Firebase.

  • أضِف حزمة تطوير البرامج (SDK) لـ Firebase C++ إلى مشروع C++.

تجدر الإشارة إلى أنّ إضافة Firebase إلى مشروع C++ تتضمّن مهامًا في وحدة تحكُّم Firebase وفي مشروع C++ المفتوح (على سبيل المثال، يمكنك تنزيل ملفات إعداد Firebase من وحدة التحكّم، ثم نقلها إلى مشروع C++ ).

إنشاء قاعدة بيانات

  1. انتقِل إلى قسم Realtime Database ضمن وحدة تحكُّم Firebase. سيُطلب منك اختيار مشروع حالي في Firebase. اتّبِع سير عمل إنشاء قاعدة البيانات.

  2. اختَر وضع بدء لقواعد أمان Firebase:

    وضع الاختبار

    جيدة لبدء استخدام مكتبات برامج الويب والجوَّال، ولكنها تسمح لأي شخص بقراءة بياناتك واستبدالها. بعد الاختبار، احرص على مراجعة قسم فهم قواعد بيانات Firebase في الوقت الفعلي.

    لبدء استخدام الويب أو Apple أو حزمة تطوير البرامج (SDK) لنظام التشغيل Android، اختَر "وضع الاختبار".

    وضع القفل

    رفض جميع عمليات القراءة والكتابة من برامج الويب والأجهزة الجوّالة سيظل بإمكان خوادم التطبيقات التي تمت مصادقتها الوصول إلى قاعدة البيانات الخاصة بك.

  3. اختَر موقعًا لقاعدة البيانات.

    بناءً على موقع قاعدة البيانات، سيكون عنوان URL لقاعدة البيانات الجديدة بأحد الأشكال التالية:

    • DATABASE_NAME.firebaseio.com (لقواعد البيانات في us-central1)

    • DATABASE_NAME.REGION.firebasedatabase.app (لقواعد البيانات في جميع المواقع الجغرافية الأخرى)

  4. انقر على تم.

عند تفعيل قاعدة البيانات في الوقت الفعلي، يتم أيضًا تفعيل واجهة برمجة التطبيقات في Cloud API Manager.

إنشاء وإعداد firebase::App

لتتمكّن من الوصول إلى "قاعدة بيانات الوقت الفعلي"، عليك إنشاء 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++ لقاعدة بيانات Firebase في الوقت الفعلي.

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

إذا اخترت استخدام إمكانية الوصول العلني إلى القواعد، يمكنك الانتقال إلى الأقسام الخاصة بحفظ البيانات واستردادها.

إعداد ميزة "الوصول المحدود"

إذا كنت لا تريد استخدام الوصول العام، يمكنك إضافة مصادقة Firebase إلى تطبيقك للتحكم في الوصول إلى قاعدة البيانات.

الخطوات التالية

المشاكل المعروفة

  • على الأنظمة الأساسية لسطح المكتب (أنظمة التشغيل Windows وMac وLinux)، تستخدم حزمة تطوير البرامج (SDK) لـ Firebase C++ REST للوصول إلى قاعدة البيانات لديك. ولهذا السبب، يجب تعريف الفهارس التي تستخدمها مع Query::OrderByChild() على سطح المكتب وإلا سيفشل المستمعون.
  • لا يتيح إصدار سير العمل لسطح المكتب من قاعدة بيانات الوقت الفعلي بلا اتصال بالإنترنت أو الاستمرارية.