Firebase 即時資料庫使用 NoSQL 雲端資料庫儲存和同步資料。資料在所有用戶端之間即時同步,並且在您的應用程式離線時仍然可用。
在你開始之前
在使用Firebase 即時資料庫之前,您需要:
註冊您的 C++ 專案並將其配置為使用 Firebase。
如果您的 C++ 專案已使用 Firebase,則它已針對 Firebase 進行註冊和設定。
將Firebase C++ SDK加入到您的 C++ 專案。
請注意,將 Firebase 新增至您的 C++ 專案涉及Firebase 控制台和開啟的 C++ 專案中的任務(例如,您從控制台下載 Firebase 設定文件,然後將它們移至您的 C++ 專案中)。
建立資料庫
導覽至Firebase 控制台的「即時資料庫」部分。系統會提示您選擇現有的 Firebase 專案。遵循資料庫建立工作流程。
選擇 Firebase 安全性規則的啟動模式:
- 測試模式
適合開始使用行動和 Web 用戶端庫,但允許任何人讀取和覆蓋您的資料。測試後,請務必查看了解 Firebase 即時資料庫規則部分。
若要開始使用 Web、Apple 或 Android SDK,請選擇測試模式。
- 鎖定模式
拒絕來自行動和 Web 用戶端的所有讀取和寫入。經過身份驗證的應用程式伺服器仍然可以存取您的資料庫。
選擇資料庫的位置。
根據資料庫的位置,新資料庫的 URL 將採用以下形式之一:
DATABASE_NAME .firebaseio.com
(適用於us-central1
中的資料庫)DATABASE_NAME . REGION .firebasedatabase.app
(適用於所有其他位置的資料庫)
按一下“完成” 。
啟用即時資料庫時,也會啟用Cloud API Manager中的 API。
建立並初始化 firebase::App
在存取即時資料庫之前,您需要建立並初始化firebase::App
。
包含firebase::App
的頭檔:
#include "firebase/app.h"
安卓
建立firebase::App
,將 JNI 環境和對 Java Activity 的jobject
參考作為參數傳遞:
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 身份驗證新增至您的應用程式以控制對資料庫的存取。
下一步
了解如何建立即時資料庫的數據。
準備啟動您的應用程式:
- 在 Google Cloud Console 中為您的專案設定預算提醒。
- 監控 Firebase 控制台中的使用情況和計費資訊中心,全面了解專案在多個 Firebase 服務中的使用情況。您還可以存取即時資料庫使用儀表板以取得更詳細的使用資訊。
- 查看Firebase 啟動清單。
已知的問題
- 在桌面平台(Windows、Mac、Linux)上,Firebase C++ SDK 使用 REST 來存取您的資料庫。因此,您必須在桌面上聲明與 Query::OrderByChild() 一起使用的索引,否則您的偵聽器將失敗。
- 即時資料庫的桌面工作流程版本不支援離線或持久性。