Catch up on everything announced at Firebase Summit, and learn how Firebase can help you accelerate app development and run your app with confidence. Learn More

C ++用のFirebaseRealtimeDatabaseの使用を開始する

コレクションでコンテンツを整理 必要に応じて、コンテンツの保存と分類を行います。

Firebase Realtime Database は、NoSQL クラウド データベースを使用してデータを保存および同期します。データはすべてのクライアント間でリアルタイムに同期され、アプリがオフラインになっても引き続き利用できます。

あなたが始める前に

Firebase Realtime Databaseを使用する前に、次のことを行う必要があります。

  • C++ プロジェクトを登録し、Firebase を使用するように構成します。

    C++ プロジェクトですでに Firebase を使用している場合は、Firebase 用に登録および構成されています。

  • Firebase C++ SDKを C++ プロジェクトに追加します。

Firebase を C++ プロジェクトに追加するには、 Firebase コンソールと開いている C++ プロジェクトの両方でタスクが必要になることに注意してください (たとえば、コンソールから Firebase 構成ファイルをダウンロードして、それらを C++ プロジェクトに移動します)。

データベースを作成する

  1. Firebase コンソールRealtime Databaseセクションに移動します。既存の Firebase プロジェクトを選択するよう求められます。データベース作成ワークフローに従います。

  2. Firebase セキュリティ ルールの開始モードを選択します。

    テストモード

    モバイルおよび Web クライアント ライブラリの使用を開始するのに適していますが、誰でもデータの読み取りと上書きを行うことができます。テスト後「Firebase Realtime Database ルールを理解する」セクションを必ず確認してください。

    Web、Apple、または Android SDK を開始するには、testmode を選択します。

    ロックモード

    モバイルおよび Web クライアントからの読み取りと書き込みをすべて拒否します。認証されたアプリケーション サーバーは引き続きデータベースにアクセスできます。

  3. データベースの場所を選択します。

    データベースの場所に応じて、新しいデータベースの URL は次のいずれかの形式になります。

    • DATABASE_NAME .firebaseio.com ( us-central1のデータベース用)

    • DATABASE_NAME . REGION .firebasedatabase.app (他のすべての場所のデータベース用)

  4. [完了]をクリックします。

Realtime Database を有効にすると、 Cloud API Managerの API も有効になります。

firebase::App の作成と初期化

Realtime Database にアクセスする前に、 firebase::Appを作成して初期化する必要があります。

firebase::Appのヘッダー ファイルを含めます。

#include "firebase/app.h"

アンドロイド

firebase firebase::Appを作成し、JNI 環境と Java アクティビティへの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 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 のデスクトップ ワークフロー バージョンは、オフラインまたは持続性をサポートしていません。