Firebase Remote Config を C++ で使用する

Firebase Remote Config を使ってアプリ内パラメータを定義し、その値をクラウドで更新することができます。これにより、アプリのアップデートを配布しなくてもアプリの外観や動作を変更できます。

Remote Config ライブラリは、アプリ内デフォルト パラメータ値を格納し、更新されたパラメータ値をサーバーからフェッチし、フェッチ済みの値をアプリで有効にするタイミングを制御するために使用されます。詳しくは Remote Config API の概要をご覧ください。

Remote Config をアプリに追加する

Android

  1. Firebase C++ プロジェクトに追加します
  2. 次のライブラリをリンクし、(<sdk_version> をお使いの Android SDK バージョンに変更してから)依存関係を app/build.gradle ファイルに追加します。
    libapp.a
    libremote_config.a
    compile 'com.google.firebase:firebase-config:10.0.1'
  3. Firebase App を作成し、JNI 環境とアクティビティに渡します。
    app = ::firebase::App::Create(::firebase::AppOptions(), jni_env, activity);
  4. 次に示すように Remote Config Library を初期化します。
    ::firebase::remote_config::Initialize(app);

iOS

  1. Firebase C++ プロジェクトに追加します
  2. 次の依存関係を Podfile に追加し、必要なフレームワークを追加します。
    pod 'Firebase/RemoteConfig'
    firebase.framework
    firebase_remote_config.framework
  3. Firebase アプリを作成します。
    app = ::firebase::App::Create(::firebase::AppOptions());
  4. 次に示すように Remote Config Library を初期化します。
    ::firebase::remote_config::Initialize(app);

アプリ内デフォルト パラメータ値を設定する

アプリ内デフォルト パラメータ値を Remote Config オブジェクトに設定できるので、Remote Config サーバーに接続する前にアプリを意図したとおりに動作させることができ、サーバー側に値が設定されていない場合にデフォルト値を使用することができます。

  1. std::map<const char*, const char*> オブジェクトを使って、一連のパラメータ名とデフォルト パラメータ値を定義します。
  2. SetDefaults() を使って、これらの値を Remote Config オブジェクトに追加します。

アプリ内で使うパラメータ値を取得する

ここまでの手順で、パラメータ値を Remote Config オブジェクトから取得できるようになりました。Remote Config サーバーに設定した値をフェッチし、有効化すると、それらの値をアプリで使用できるようになります。または SetDefaults() を使って設定したアプリ内パラメータ値を取得します。

アプリ内パラメータ値を取得するには、アプリによって予期されるデータ型に対応した下記のメソッドを呼び出します。このとき、引数としてパラメータキーを指定します。

Firebase console でアプリを接続する

Firebase console でアプリを Firebase プロジェクトに追加します。

必要に応じて、パラメータ値をサーバーに設定する

  1. Firebase console でプロジェクトを開きます。
  2. メニューから [Remote Config] を選択して Remote Config ダッシュボードを表示します。
  3. アプリで定義したパラメータと同じ名前のパラメータを定義します。それぞれのパラメータにデフォルト値(最終的にはアプリ内デフォルト値をオーバーライドします)や条件値を設定することができます。詳しくは Remote Config のパラメータと条件についての記事をご覧ください。

必要に応じて、サーバーから値をフェッチし、有効化する

  1. Remote Config サーバーからパラメータ値をフェッチするには、Fetch() メソッドを呼び出します。Remote Config サーバーに設定したすべての値がフェッチされ、Remote Config オブジェクトにキャッシュ保存されます。
  2. フェッチ済みのパラメータ値をアプリで使用できるようにするには、ActivateFetched() メソッドを呼び出します。

これらの更新されたパラメータ値はアプリの動作と外観に影響するので、スムーズなユーザー エクスペリエンスを邪魔しないタイミングでフェッチ済みの値を有効化する必要があります。たとえば、次にユーザーがアプリを開いたときなどに有効化します。

フィードバックを送信...