Todd Kerpelman
Firebase デベロッパー アドボケート
単に優れたアプリをリリースして待っているだけでは、ビジネスを成功させることはできません。ビジネスを成功させるには、ユーザーのフィードバックにすばやく対応し、新機能のテストを行い、ユーザーが最も注目するコンテンツを提供する必要があります。
Firebase Remote Config は、まさにそのために作られたものです。Firebase Remote Config を使うと、クラウドからアプリのルック アンド フィールを変更できるので、常にユーザーのニーズにすばやく対応することができます。さらに、ユーザーごとに提供するコンテンツを変える、機能を徐々に展開する、ユーザーのアプリの使用方法に合わせてカスタマイズしたコンテンツを提供するといったことも可能です。
それでは、アプリに Remote Config を導入すると何ができるようになるかを見てみましょう。
アップデート不要でアプリを更新
アプリをリリースしたものの、直後にそれが完璧でなかったことに気づくという経験は、誰にでもあることでしょう。ユーザーが好まない、不適切だったり混乱を招いてしまうようなテキストを使ってしまったかもしれません。ゲームのレベルを難しくしすぎてプレイヤーがそれ以上進めなくなってしまったかもしれません。または、追加したアニメーションが終了するまで時間がかかりすぎるというような単純なことかもしれません。
従来は、こういった問題を修正するために、アプリのコードの値を変更してビルドし、新しいバージョンを公開した上で、すべてのユーザーが新バージョンをダウンロードするのを待つ必要がありました。
しかし、アプリに Firebase プラットフォームの Remote Config を導入していれば、クラウドから短時間で簡単に値を変更できるようになります。ユーザーが次にアプリを起動すると、Remote Config が新しい値をダウンロードしてユーザーのニーズに対応します。アプリの新しいバージョンを公開する必要はありません。
適切なユーザーに適切なコンテンツを提供する
Firebase Remote Config では、条件を設定することによって、ユーザーの対象グループごとに異なる設定を配信することができます。条件とは、ユーザーごとに特定の値を配信するために対象を設定する規則です。
たとえば、国ごとに異なる Remote Config データを配信したり、iOS 端末と Android 端末に別のデータセットを配信することができます。
さらに高度な対象指定を行うために、
Firebase Analytics で定義した Audience に基づいて異なる値を配信することもできます。たとえば、かつてアプリ内のストアを訪れたことがあり、まだ何も購入していないプレイヤーに対してストアの外観を変更したい場合は、その Audience 向けの Remote Config の値を作成します。
A/B テストと段階的ロールアウト
Remote Config の条件を利用すると、ランダムなグループのユーザーごとに異なる値を提供することができます。この機能によって、A/B テストや新機能の段階的ロールアウトを行うことができます。
リリースを考えているアプリの新機能が対象ユーザーに好まれるかどうかわからない場合、コードにフラグをつけてその機能を隠しておき、Remote Config でそのフラグの値を変更すると、機能のオン、オフを切り替えることができます。たとえば、「新機能の実験」という条件を設定して 10% のユーザーに対して有効にすると、この新機能を一部のユーザーのみにオンにし、その機能がユーザーに好まれることを確認してから、ユーザー全体にオンにするといった使い方ができます。
同じように、ユーザーのグループに対して異なる値を指定すれば、A/B テストを行うこともできます。たとえば、アプリ内購入ボタンに「今すぐ購入」と表示した場合と、「購入手続き」と表示した場合では、どちらが購入率が高くなるでしょうか。こういった実験は、A/B テストを使うと簡単に行えます。
A/B テストの結果は、Firebase Analytics で実験に基づいたユーザー プロパティを設定すると、すぐに確認できるようになります。すべての Firebase Analytics レポート(たとえば、購入手続きを始めたかどうかのレポート)は、このプロパティを使ってフィルタリングできます。A/B テストはこれからも改善されますので、今後のニュースにもご注目ください。
定着率が大幅に向上した Fabulous
この機能を他に先駆けて導入したパートナーの多くは、既に Firebase Remote Config を使用してアプリの変更をテストしています。
デューク大学で開発された Fabulous は、生活習慣の改善をサポートするアプリです。Fabulous では、どの手法をとれば最も効果的にユーザーにアプリを使ってもらえるかを探るために、アプリを使い始める際のフローに関する実験が行われました。画像やテキスト、ボタンのラベルを変更する A/B テストだけではなく、Remote Config を利用した初回起動プロセス全体の A/B テストを行い、どのダイアログをどの順番で表示すれば良いかを判断しました。
Remote Config による実験のおかげで、Fabulous の初回起動のフローを完了させるユーザーの数は 42% から 64% に上昇し、1 日のユーザーリテンション率が 27% 増加しました。
平均的なアプリは、大半のユーザーを最初の 3 日間で離脱することがわかっています。そのため、アプリの初回起動プロセスにこういった改善を加え、その効果を A/B テストで確認することは、アプリが長期的に成功を収めるために非常に重要です。
クラウドと連携
Remote Config では、すべてのデフォルト値をデバイス上でローカルに提供でき、デフォルトと異なる値のみがクラウドから送信されます。アプリのすべての値をクラウドと連携させ、Remote Config で設定を行えるようにすることで、アプリの柔軟性が向上します。変更のみが送信されるので、ネットワークの呼び出しは軽量です。そのため、ハードコードしていた文字列や定数、アプリの定数用ファイル(開発者なら誰でもこのようなファイルを作った経験があるでしょう)をすべて Remote Config でクラウド対応にすることも可能です。
Firebase Remote Config は、Firebase プラットフォームの一部であり、iOS と Android の両方で無償で利用できます。詳細については、
ドキュメントをご覧ください。また、Firebase SDK のその他の機能についてもぜひご確認ください。
Posted by
Khanh LeViet - Developer Relations Team