Firebase Remote Config を使ってアプリ内パラメータを定義し、その値をクラウドで更新できます。これにより、アプリのアップデートを配布しなくてもアプリの外観や動作を変更できます。
Remote Config ライブラリは、アプリ内のデフォルトのパラメータ値の保存、Remote Config バックエンドからの更新されたパラメータ値のフェッチ、フェッチされた値がアプリで使用できるようになるタイミングの制御に使用されます。詳細については、Remote Config の読み込み方法をご覧ください。
ステップ 1: アプリに Firebase を追加する
Remote Config を使用するには、次の作業が必要です。
C++ プロジェクトを登録して Firebase を使用するように構成します。
C++ プロジェクトですでに Firebase を使用している場合、この登録と構成はすでに行われています。
Firebase C++ SDK を C++ プロジェクトに追加します。
Firebase を C++ プロジェクトに追加するには、Firebase コンソールと開いている C++ プロジェクトの両方でこのタスクを行う必要があります(コンソールから Firebase 構成ファイルをダウンロードして C++ プロジェクトに移動するなど)。
ステップ 2: Remote Config をアプリに追加する
Android
Firebase をアプリに追加したら、次の操作を行います。
Firebase アプリを作成し、JNI 環境とアクティビティに渡します。
app = ::firebase::App::Create(::firebase::AppOptions(), jni_env, activity);
次に示すように Remote Config ライブラリを初期化します。
::firebase::remote_config::Initialize(app);
iOS+
Firebase をアプリに追加したら、次の操作を行います。
Firebase アプリを作成します。
app = ::firebase::App::Create(::firebase::AppOptions());
次に示すように Remote Config ライブラリを初期化します。
::firebase::remote_config::Initialize(app);
ステップ 3: アプリ内デフォルト パラメータ値を設定する
アプリ内デフォルト パラメータ値を Remote Config オブジェクトに設定すると、Remote Config バックエンドに接続する前にアプリを意図したとおりに動作させることができます。また、バックエンド側に値が設定されていない場合は、これらのデフォルト値を使用できます。
パラメータ名のセットとデフォルトのパラメータ値を定義するには、
std::map<const char*, const char*>
オブジェクトかstd::map<const char*, firebase::Variant>
オブジェクトを使用します。firebase::Variant
について学びます。
Remote Config バックエンド パラメータ値をすでに構成している場合は、これらの Key-Value ペアを含むファイルをダウンロードし、これを使用して
map
オブジェクトを作成できます。詳しくは、Remote Config テンプレートのデフォルトをダウンロードするをご覧ください。SetDefaults()
を使用して、これらの値を Remote Config オブジェクトに追加します。
ステップ 4: アプリ内で使用するパラメータ値を取得する
ここまでの手順で、パラメータ値を Remote Config オブジェクトから取得できるようになりました。Remote Config バックエンドに値を設定し、フェッチして有効化すると、それらの値をアプリで使用できるようになります。それ以外の場合に構成したアプリ内パラメータ値を取得するには、SetDefaults()
を使用します。
これらの値を取得するには、アプリによって予期されるデータ型に対応した以下のメソッドを呼び出します。このとき、引数としてパラメータキーを指定します。
ステップ 5: Firebase コンソールでアプリを接続する
Firebase コンソールでアプリを Firebase プロジェクトに追加します。
ステップ 6: パラメータ値を設定する
- Firebase コンソールでプロジェクトを開きます。
- メニューから [Remote Config] を選択して Remote Config ダッシュボードを表示します。
- アプリで定義したパラメータと同じ名前のパラメータを定義します。それぞれのパラメータに、デフォルト値(最終的にはアプリ内デフォルト値をオーバーライドします)や条件値を設定できます。詳しくは Remote Config のパラメータと条件をご覧ください。
ステップ 7: 値をフェッチして有効にする
- Remote Config バックエンドからパラメータ値をフェッチするには、
Fetch()
メソッドを呼び出します。バックエンドに設定したすべての値がフェッチされ、Remote Config オブジェクトにキャッシュ保存されます。 - フェッチ済みのパラメータ値をアプリで使用できるようにするには、
ActivateFetched()
を呼び出します。
次のステップ
Remote Config のユースケースに関する詳細な情報が必要な方は、主要なコンセプトと高度な戦略に関する以下のドキュメントをご覧ください。