با پایگاه داده بیدرنگ Firebase برای C++ شروع کنید

پایگاه داده بلادرنگ Firebase داده‌ها را با استفاده از یک پایگاه داده ابری NoSQL ذخیره و همگام‌سازی می‌کند. داده‌ها در تمام کلاینت‌ها به صورت بلادرنگ همگام‌سازی می‌شوند و حتی زمانی که برنامه شما آفلاین می‌شود، در دسترس باقی می‌مانند.

قبل از شروع

قبل از اینکه بتوانید از Firebase Realtime Database استفاده کنید، باید:

  • پروژه ++C خود را ثبت کنید و آن را برای استفاده از Firebase پیکربندی کنید.

    اگر پروژه ++C شما از قبل از Firebase استفاده می‌کند، پس از قبل برای Firebase ثبت و پیکربندی شده است.

  • کیت توسعه نرم‌افزاری Firebase C++ را به پروژه C++ خود اضافه کنید.

توجه داشته باشید که اضافه کردن Firebase به پروژه C++ شما شامل وظایفی هم در کنسول Firebase و هم در پروژه C++ باز شما می‌شود (برای مثال، شما فایل‌های پیکربندی Firebase را از کنسول دانلود می‌کنید، سپس آنها را به پروژه C++ خود منتقل می‌کنید).

ایجاد یک پایگاه داده

  1. به بخش Realtime Database در کنسول Firebase بروید. از شما خواسته می‌شود که یک پروژه Firebase موجود را انتخاب کنید. مراحل ایجاد پایگاه داده را دنبال کنید.

  2. یک حالت شروع برای Firebase Security Rules خود انتخاب کنید:

    حالت تست

    برای شروع کار با کتابخانه‌های کلاینت موبایل و وب خوب است، اما به هر کسی اجازه می‌دهد داده‌های شما را بخواند و بازنویسی کند. پس از آزمایش، حتماً بخش «درک قوانین پایگاه داده بلادرنگ Firebase» را مرور کنید.

    برای شروع کار با وب، اپل یا اندروید SDK، حالت آزمایشی (testmode) را انتخاب کنید.

    حالت قفل شده

    تمام خواندن‌ها و نوشتن‌ها را از کلاینت‌های موبایل و وب رد می‌کند. سرورهای برنامه‌ی کاربردی تأیید شده‌ی شما همچنان می‌توانند به پایگاه داده‌ی شما دسترسی داشته باشند.

  3. مکانی را برای پایگاه داده انتخاب کنید.

    بسته به موقعیت مکانی پایگاه داده ، URL پایگاه داده جدید به یکی از شکل‌های زیر خواهد بود:

    • DATABASE_NAME .firebaseio.com (برای پایگاه‌های داده در us-central1 )

    • DATABASE_NAME . REGION .firebasedatabase.app (برای پایگاه‌های داده در تمام مکان‌های دیگر)

  4. روی انجام شد کلیک کنید.

وقتی Realtime Database فعال می‌کنید، API را نیز در Cloud API Manager فعال می‌کند.

ایجاد و مقداردهی اولیه firebase::App

قبل از اینکه بتوانید به Realtime Database دسترسی پیدا کنید، باید firebase::App را ایجاد و مقداردهی اولیه کنید.

فایل هدر مربوط به firebase::App اضافه کنید:

#include "firebase/app.h"

اندروید

firebase::App را ایجاد کنید و محیط JNI و یک ارجاع jobject را به عنوان آرگومان به Java Activity ارسال کنید:

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 به برنامه خود اضافه کنید تا دسترسی به پایگاه داده را کنترل کنید.

مراحل بعدی

مشکلات شناخته شده

  • در پلتفرم‌های دسکتاپ (ویندوز، مک، لینوکس)، کیت توسعه نرم‌افزار Firebase C++ از REST برای دسترسی به پایگاه داده شما استفاده می‌کند. به همین دلیل، شما باید ایندکس‌هایی را که استفاده می‌کنید با Query::OrderByChild() در دسکتاپ تعریف کنید ، در غیر این صورت شنونده‌های شما با خطا مواجه می‌شوند.
  • نسخه گردش کار دسکتاپ Realtime Database از حالت آفلاین یا ذخیره‌سازی مداوم پشتیبانی نمی‌کند.