Wprowadzenie do Bazy danych czasu rzeczywistego Firebase dla C++

Baza danych czasu rzeczywistego Firebase przechowuje i synchronizuje dane przy użyciu chmury NoSQL w bazie danych. Dane są synchronizowane między wszystkimi klientami w czasie rzeczywistym i pozostają będą dostępne, gdy aplikacja przejdzie w tryb offline.

Zanim zaczniesz

Zanim będzie można użyć Firebase Realtime Database, musisz:

  • Zarejestruj swój projekt C++ i skonfiguruj go pod kątem korzystania z Firebase.

    Jeśli Twój projekt w C++ korzysta już z Firebase, to jest już zarejestrowany skonfigurowane na potrzeby Firebase.

  • Dodaj pakiet SDK Firebase C++ do projektu C++.

.

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

Utwórz bazę danych

  1. Przejdź do sekcji Realtime Database Firebase konsola. Pojawi się prośba o wybranie istniejącego projektu Firebase. Postępuj zgodnie z procedurą tworzenia bazy danych.

  2. Wybierz tryb początkowy dla urządzenia Firebase Security Rules:

    Tryb testowy

    Dobre rozwiązanie w przypadku rozpoczynania pracy z bibliotekami klienta mobilnego i internetowego, ale pozwala każdemu na odczyt i zastępowanie Twoich danych. Po zakończeniu testów upewnij się, że zapoznaj się z informacjami o regułach Bazy danych czasu rzeczywistego Firebase.

    .

    Aby zacząć korzystać z pakietu SDK w wersji internetowej, Apple lub Android, wybierz tryb testowy.

    Tryb blokady

    Blokuje wszystkie odczyty i zapisy z klientów mobilnych i internetowych. Uwierzytelnione serwery aplikacji nadal mogą uzyskać dostęp do bazy danych.

  3. Wybierz lokalizację bazy danych.

    W zależności od lokalizacja bazy danych, Adres URL nowej bazy danych będzie miał jeden z tych formatów:

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

    • DATABASE_NAME.REGION.firebasedatabase.app (dla baz danych w innych lokalizacjach)

  4. Kliknij Gotowe.

Gdy włączysz Realtime Database, spowoduje to również włączenie interfejsu API w Menedżer interfejsów API Cloud.

Utwórz i zainicjuj firebase::App

Aby uzyskać dostęp do narzędzia Realtime Database, musisz utworzyć i zainicjować firebase::App

Uwzględnij plik nagłówka firebase::App:

#include "firebase/app.h"

Android

Utwórz firebase::App, przekazując środowisko JNI i jobject lub odniesienia do aktywności Java jako argumentów:

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 Class

firebase::database::Database jest punktem wejścia pakietu SDK C++ Firebase Realtime Database.

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

Jeśli dostęp publiczny do reguł jest włączony, możesz przejść do sekcji dotyczących zapisywania i pobierania danych.

Konfigurowanie ograniczonego dostępu

Jeśli nie chcesz korzystać z dostępu publicznego, możesz dodać Firebase Authentication do swojej w celu kontrolowania dostępu do bazy danych.

Następne kroki

Znane problemy

  • Na platformach stacjonarnych (Windows, Mac, Linux) pakiet SDK Firebase C++ używa za pomocą metody REST, aby uzyskać dostęp do bazy danych. Z tego powodu zadeklaruj używane indeksy za pomocą Query::OrderByChild() na komputerze. W przeciwnym razie odbiorniki przestaną działać.
  • Wersja Realtime Database na komputery nie obsługuje trybu offline ani wytrwałość.