Wprowadzenie do Bazy danych czasu rzeczywistego Firebase dla C++

Baza danych czasu rzeczywistego Firebase przechowuje i synchronizuje dane za pomocą bazy danych NoSQL w chmurze. Dane są synchronizowane w czasie rzeczywistym na wszystkich klientach i pozostają dostępne, gdy aplikacja przechodzi w tryb offline.

Zanim zaczniesz

Zanim zaczniesz korzystać z Firebase Realtime Database, musisz:

  • zarejestrować projekt C++ i skonfigurować go pod kątem używania Firebase.

    Jeśli projekt C++ korzysta już z Firebase, jest on już zarejestrowany i skonfigurowany pod kątem Firebase.

  • dodać pakiet Firebase C++ SDK do projektu C++.

Pamiętaj, że dodanie Firebase do projektu C++ wymaga wykonania zadań zarówno w Firebase konsoli Firebase, jak i w otwartym projekcie C++ (np. pobierasz pliki konfiguracyjne Firebase z konsoli, a następnie przenosisz je do projektu C++).

Tworzenie bazy danych

  1. W konsoli Firebase otwórz Bazy danych i miejsce na dane > Baza danych czasu rzeczywistego.

  2. Kliknij Utwórz bazę danych.

  3. Wybierz tryb początkowy dla Firebase Security Rules:

    Tryb testowy

    Dobry sposób na rozpoczęcie pracy z bibliotekami klienta mobilnego i internetowego, ale umożliwia każdemu odczytywanie i nadpisywanie danych. Po testach zapoznaj się z sekcją Reguły Bazy danych czasu rzeczywistego Firebase.

    Aby rozpocząć korzystanie z pakietu SDK na potrzeby internetu, Apple lub Androida, wybierz tryb testowy.

    Tryb blokady

    Odrzuca wszystkie odczyty i zapisy klientów mobilnych oraz internetowych. Uwierzytelnione serwery aplikacji nadal mogą uzyskiwać dostęp do bazy danych.

  4. Wybierz lokalizację bazy danych.

    W zależności od lokalizacji bazy danych, adres URL nowej bazy danych będzie miał jedną z tych postaci:

    • DATABASE_NAME.firebaseio.com (w przypadku baz danych w lokalizacji us-central1)

    • DATABASE_NAME.REGION.firebasedatabase.app (w przypadku baz danych we wszystkich innych lokalizacjach)

  5. Kliknij Gotowe.

Gdy włączysz Realtime Database, włączy się też interfejs API w Menedżerze interfejsów Cloud API.

Tworzenie i inicjowanie firebase::App

Zanim uzyskasz dostęp do Realtime Database, musisz utworzyć i zainicjować firebase::App.

Dołącz plik nagłówkowy firebase::App:

#include "firebase/app.h"

Android

Utwórz firebase::App, przekazując środowisko JNI i odwołanie jobject do działania Java jako argumenty:

app = ::firebase::App::Create(::firebase::AppOptions("APPLICATION NAME"), jni_env, activity);

iOS+

Utwórz firebase::App:

app = ::firebase::App::Create(::firebase::AppOptions("APPLICATION NAME"));

Dostęp do klasy firebase::database::Database

firebase::database::Database to punkt wejścia do Firebase Realtime Database C++ SDK.

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

Jeśli zdecydujesz się na używanie dostępu publicznego do reguł, możesz przejść do sekcji dotyczących zapisywania i pobierania danych.

Konfigurowanie dostępu ograniczonego

Jeśli nie chcesz używać dostępu publicznego, możesz dodać Firebase Authentication do swojej aplikacji, aby kontrolować dostęp do bazy danych.

Następne kroki

Znane problemy

  • Na platformach komputerowych (Windows, Mac, Linux) pakiet Firebase C++ SDK używa interfejsu REST do uzyskiwania dostępu do bazy danych. Z tego powodu musisz zadeklarować indeksy używane z Query::OrderByChild() na komputerze, w przeciwnym razie Twoje odbiorniki nie będą działać.
  • Wersja Bazy danych czasu rzeczywistego na komputery nie obsługuje trybu offline ani trwałości.Realtime Database