Firebase Remote Configplat_iosplat_androidplat_cppplat_unity

アプリのアップデートを公開しなくても、アプリの動作と外観を変更することができます。

Firebase Remote Config は、アプリのアップデートをユーザーにダウンロードしてもらわなくても、アプリの動作と外観を変更できるクラウド サービスです。Remote Config を使用する場合は、アプリの動作や外観を制御するアプリ内デフォルト値を作成します。後から Firebase コンソールを使用して、すべてのアプリユーザーまたはユーザー層のセグメントに対してアプリ内デフォルト値をオーバーライドすることができます。アップデートを適用するタイミングはアプリ側で制御できます。アプリはアップデートの有無を頻繁にチェックし、パフォーマンスにほとんど影響をおよぼすことなくアップデートを適用することができます。

iOS の設定 Android の設定 C++ の設定 Unity の設定

主な機能

アプリのユーザーに機能変更をすばやく公開する サービス側パラメータ値を変更することで、アプリのデフォルトの動作や外観を変更することができます。たとえば、アプリのアップデートを公開しなくても、季節ごとのプロモーションをサポートするためにアプリのレイアウトや色のテーマを変更できます。
ユーザー層のセグメントに対してアプリをカスタマイズする Remote Config を使って、ユーザー層のさまざまなセグメント(アプリ バージョン、Firebase 向け Google アナリティクス ユーザーリスト、言語など)に対してカスタマイズしたバリエーションを提供することができます。
A/B テストを実施してアプリを改善する Remote Config のランダム割り当て機能と Firebase 向け Google アナリティクスを使って、ユーザー層のさまざまなセグメントに対してアプリの機能改善の A/B テストを行うことで、ユーザー全体に公開する前に機能改善を評価することができます。

仕組み

Remote Config には、パラメータ値のフェッチやキャッシュといった重要なタスクを処理するクライアント ライブラリが含まれています。また、アプリ デベロッパーは、新しい値が有効になる(したがってアプリのユーザー エクスペリエンスに反映される)タイミングを制御することができます。これにより、アプリのエクスペリエンスを保護することができます。

Remote Config クライアント ライブラリの get メソッドは、あらゆるパラメータ値を取得するためのメソッドです。アプリがサービス側の値を取得するために使用するロジックは、アプリ内デフォルト値を取得する場合と同じため、コードを何行も書かなくても Remote Config の機能をアプリに追加できます。

アプリ内デフォルト値をオーバーライドするには、Firebase コンソールを使って、アプリ内で使用しているパラメータと同じ名前のパラメータを作成します。それぞれのパラメータにサービス側デフォルト値を設定することで、アプリ内デフォルト値をオーバーライドできます。また、条件値を作成して、特定の条件を満たすアプリ インスタンスのアプリ内デフォルト値をオーバーライドすることもできます。次の図は、パラメータ値がサービス側とアプリ内でどのように優先されるかを示しています。

パラメータ、条件、Remote Config が条件値間の競合を解決する方法について詳しくは、Remote Config のパラメータと条件についての記事をご覧ください。

実装のプロセス

アプリと Remote Config を統合します。 Remote Config を使ってアプリの動作と外観のどの側面を変更したいかを定義し、アプリ内で使うパラメータを作成します。
デフォルト パラメータ値を設定します。 setDefaults() を使って Remote Config パラメータのアプリ内デフォルト値を設定します。
パラメータ値のフェッチ、有効化、取得を行うロジックを追加します。 アプリはサービスから安全かつ効率的にパラメータ値をフェッチし、フェッチ済みの値を有効化することができます。そのため、値をフェッチする最適なタイミングや、サービス側の値が存在するかどうかを心配することなくアプリを作成できます。アプリは、アプリ内に定義されたローカル変数の値を読み取るのと同じように、get メソッドを使ってパラメータの値を取得します。
(必要に応じて)サービス側デフォルト値と条件パラメータ値を更新します。 Firebase コンソールで値を定義してアプリ内デフォルト値をオーバーライドすることができます。アプリ内デフォルト値とサービスからフェッチ済みの値のどちらの場合も、同じ get メソッドを使ってアクセスするため、値のオーバーライドはアプリの起動前でも起動後でも可能です。

ポリシーと制限

次のポリシーにご注意ください。

  • Remote Config を使って、ユーザーの承認を必要とするアプリのアップデートを作成しないでください。信頼できないアプリであると判断されてしまうおそれがあります。
  • 機密データを Remote Config のパラメータキーまたはパラメータ値に格納しないでください。プロジェクトの Remote Config 設定に格納されたパラメータキーや値はデコードされてしまう可能性があります。
  • Remote Config を使ってアプリのターゲット プラットフォームの要件を回避しようとしないでください。

Remote Config のパラメータと条件にはいくつかの制限があります。詳しくはパラメータと条件の制限についての記事をご覧ください。

その他の種類のデータを保存する方法

  • Firebase Realtime Database は JSON アプリケーション データ(ゲームの状態やチャット メッセージなど)を格納し、接続されているすべての端末で変更を瞬時に同期します。
  • Firebase Hosting はグローバル アセット(ウェブサイトの HTML、CSS、JavaScript など)と、デベロッパーが提供するその他のアセット(グラフィック、フォント、アイコンなど)をホストします。
  • Cloud Storage は、画像、動画、音声などのファイルや、ユーザーが作成したその他のコンテンツを保存します。

次のステップ

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

ご不明な点がありましたら、Google のサポートページをご覧ください。