获取我们在 Firebase 峰会上发布的所有信息,了解 Firebase 可如何帮助您加快应用开发速度并满怀信心地运行应用。了解详情

开始使用适用于 C++ 的 Firebase 实时数据库

使用集合让一切井井有条 根据您的偏好保存内容并对其进行分类。

Firebase 实时数据库使用 NoSQL 云数据库存储和同步数据。数据在所有客户端之间实时同步,并且在您的应用程序离线时仍然可用。

在你开始之前

在使用Firebase 实时数据库之前,您需要:

  • 注册您的 C++ 项目并将其配置为使用 Firebase。

    如果您的 C++ 项目已经使用 Firebase,那么它已经为 Firebase 注册和配置。

  • Firebase C++ SDK添加到您的 C++ 项目。

请注意,将 Firebase 添加到您的 C++ 项目涉及Firebase 控制台和打开的 C++ 项目中的任务(例如,您从控制台下载 Firebase 配置文件,然后将它们移动到您的 C++ 项目中)。

创建数据库

  1. 导航到Firebase 控制台实时数据库部分。系统会提示您选择现有的 Firebase 项目。遵循数据库创建工作流程。

  2. 为您的 Firebase 安全规则选择一种启动模式:

    测试模式

    适合开始使用移动和 Web 客户端库,但允许任何人读取和覆盖您的数据。测试后,请务必查看了解 Firebase 实时数据库规则部分。

    要开始使用 Web、Apple 或 Android SDK,请选择 testmode。

    锁定模式

    拒绝来自移动和 Web 客户端的所有读取和写入。您经过身份验证的应用程序服务器仍然可以访问您的数据库。

  3. 选择数据库的位置。

    根据数据库的位置,新数据库的 URL 将采用以下形式之一:

    • DATABASE_NAME .firebaseio.com (用于us-central1中的数据库)

    • DATABASE_NAME . REGION .firebasedatabase.app (适用于所有其他位置的数据库)

  4. 单击完成

当您启用实时数据库时,它还会启用Cloud API Manager中的 API。

创建并初始化 firebase::App

在访问实时数据库之前,您需要创建并初始化firebase::App

包括firebase::App的头文件:

#include "firebase/app.h"

安卓

创建jobject firebase::App ,将 JNI 环境和对 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 类

firebase::database::Database是 Firebase 实时数据库 C++ SDK 的入口点。

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

如果您选择对规则使用公共访问,则可以继续阅读有关保存和检索数据的部分。

设置受限访问

如果您不想使用公共访问权限,可以将 Firebase 身份验证添加到您的应用程序以控制对数据库的访问权限。

下一步

已知的问题

  • 在桌面平台(Windows、Mac、Linux)上,Firebase C++ SDK 使用 REST 访问您的数据库。因此,您必须在桌面上声明与 Query::OrderByChild() 一起使用的索引,否则您的侦听器将失败。
  • 实时数据库的桌面工作流版本不支持离线或持久性。