«پایگاه داده بیدرنگ Firebase» دادهها را بااستفاده از پایگاه داده ابری NoSQL ذخیره و همگامسازی میکند. دادهها در همه کلاینتها بهطور همزمان همگامسازی میشوند و وقتی برنامهتان آفلاین میشود، دردسترس باقی میمانند.
قبلاز شروع کردن
پیشاز اینکه بتوانید از Firebase Realtime Database استفاده کنید، باید:
پروژه C++ خود را ثبت کنید و آن را برای استفاده از Firebase پیکربندی کنید.
اگر پروژه C++ شما ازقبل از Firebase استفاده میکند، پس ازقبل برای Firebase ثبت و پیکربندی شده است.
کیت توسعه نرمافزار Firebase C++ را به پروژه ++C خود اضافه کنید.
توجه داشته باشید که افزودن Firebase به پروژه C++ شامل کارهایی هم در Firebase کنسول و هم در پروژه C++ باز شما میشود (برای مثال، فایلهای پیکربندی Firebase را از کنسول بارگیری میکنید، سپس آنها را به پروژه C++ خود منتقل میکنید).
ایجاد پایگاه داده
در کنسول Firebase، به پایگاههای داده و فضای ذخیرهسازی > پایگاه داده همزمان بروید.
روی ایجاد پایگاه داده کلیک کنید.
حالت شروع را برای Firebase Security Rules انتخاب کنید:
- حالت آزمایشی
برای شروع کار با کتابخانههای کارخواه وب و تلفن همراه مناسب است، اما به همه اجازه میدهد دادههایتان را بخوانند و بازنویسی کنند. پساز آزمایش، حتماً بخش آشنایی با قوانین پایگاه داده بیدرنگ Firebase را مرور کنید.
برای شروع کار با کیت توسعه نرمافزار (SDK) وب، Apple، یا Android، حالت آزمایشی را انتخاب کنید.
- حالت قفلشده
همه خواندنها و نوشتنها را از کلاینتهای وب و تلفن همراه رد میکند. سرورهای برنامه اصالتسنجیشده شما همچنان میتوانند به پایگاه دادهتان دسترسی داشته باشند.
مکانی برای پایگاه داده انتخاب کنید.
بسته به مکان پایگاه داده، نشانی وب پایگاه داده جدید به یکی از شکلهای زیر خواهد بود:
(برای پایگاههای داده درDATABASE_NAME.firebaseio.comus-central1) (برای پایگاههای داده در همه مکانهای دیگر)DATABASE_NAME.REGION.firebasedatabase.app
روی تمام کلیک کنید.
وقتی Realtime Database را فعال میکنید، میانای برنامهسازی کاربردی نیز در مدیر میانای برنامهسازی کاربردی Cloud فعال میشود.
ایجاد و مقداردهی اولیه 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++ از REST برای دسترسی به پایگاه داده شما استفاده میکند. به همین دلیل، باید نمایههایی را که استفاده میکنید با Query::OrderByChild() در رایانه اعلام کنید، درغیراینصورت شنوندگان شما ناموفق خواهند بود.
- نسخه گردش کار رایانه Realtime Database از حالت آفلاین یا پایداری پشتیبانی نمیکند.