Check out what’s new from Firebase@ Google I/O 2021, and join our alpha program for early access to the new Remote Config personalization feature. Learn more

Начало работы с базой данных Firebase Realtime для C ++

База данных Firebase Realtime хранит и синхронизирует данные с помощью облачной базы данных NoSQL. Данные синхронизируются между всеми клиентами в реальном времени и остаются доступными, когда ваше приложение отключается.

Прежде чем вы начнете

Прежде чем вы сможете использовать Firebase Realtime Database , вам необходимо:

  • Зарегистрируйте свой проект C ++ и настройте его для использования Firebase.

    Если ваш проект C ++ уже использует Firebase, значит, он уже зарегистрирован и настроен для Firebase.

  • Добавьте Firebase C ++ SDK в свой проект C ++.

Обратите внимание, что добавление Firebase в ваш проект C ++ включает задачи как в консоли Firebase, так и в вашем открытом проекте C ++ (например, вы загружаете файлы конфигурации Firebase из консоли, а затем перемещаете их в свой проект C ++).

Создать базу данных

  1. Перейдите в раздел Realtime Database консоли Firebase . Вам будет предложено выбрать существующий проект Firebase. Следуйте рабочему процессу создания базы данных.

  2. Выберите начальный режим для ваших правил безопасности Firebase:

    Тестовый режим

    Подходит для начала работы с мобильными и веб-клиентскими библиотеками, но позволяет любому читать и перезаписывать ваши данные. После тестирования обязательно ознакомьтесь с разделом « Общие сведения о правилах базы данных Firebase в реальном времени ».

    Чтобы начать работу с Интернетом, SDK для iOS или Android, выберите тестовый режим.

    Заблокированный режим

    Запрещает все операции чтения и записи из мобильных и веб-клиентов. Ваши аутентифицированные серверы приложений по-прежнему могут получить доступ к вашей базе данных.

  3. Выберите регион для базы данных. В зависимости от вашего выбора региона пространство имен базы данных будет иметь вид <databaseName>.firebaseio.com или <databaseName>.<region>.firebasedatabase.app . Для получения дополнительной информации см. Выберите места для вашего проекта .

  4. Щелкните Готово .

Когда вы включаете базу данных в реальном времени, она также включает API в Cloud API Manager .

Создать и инициализировать firebase :: App

Прежде чем вы сможете получить доступ к базе данных Realtime, вам необходимо создать и инициализировать firebase::App .

Включите файл заголовка для firebase::App :

#include "firebase/app.h"

Android

Создайте firebase::App , передав в качестве аргументов среду JNI и ссылку на jobject задания на Java Activity:

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 Class

Firebase firebase::database::Database - это точка входа для Firebase Realtime Database C ++ SDK.

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

Если вы решили использовать публичный доступ для своих правил, вы можете перейти к разделам по сохранению и извлечению данных.

Настройка ограниченного доступа

Если вы не хотите использовать публичный доступ, вы можете добавить Firebase Authentication в свое приложение для управления доступом к базе данных.

Следующие шаги

Известные проблемы

  • На настольных платформах (Windows, Mac, Linux) Firebase C ++ SDK использует REST для доступа к вашей базе данных. Из-за этого вы должны объявить индексы, которые вы используете с Query :: OrderByChild () на рабочем столе, иначе ваши слушатели выйдут из строя.
  • Версия рабочего процесса Realtime Database для настольных ПК не поддерживает автономный режим или постоянство.