コンソールへ移動

Firebase Remote Config の iOS 向けサンプルアプリのチュートリアル

このガイドでは、Remote Config を iOS アプリに統合する手順を説明します。iOS 向け Remote Config API の詳細については、FIRRemoteConfig をご覧ください。

要件

Firebase を iOS プロジェクトに追加する方法で説明されている手順に沿ってプロジェクトを設定します。

クライアント ライブラリをインストールする

  1. Podfile に次の依存関係を追加します。

    pod 'Firebase/RemoteConfig'
    

  2. ファイルを保存し、次のコマンドを実行します。

    pod install
    

これにより、アプリケーションの .xcworkspace ファイルが作成されます。このファイルは、アプリケーションで今後行うあらゆる開発で利用できます。

クイックスタート サンプル用の Remote Config プロジェクトを作成する

クイックスタート サンプルを使うと、サンプルアプリのウェルカム メッセージを、Remote Config を使って定義する方法を試すことができます。クイックスタート サンプルを実行するには、まず Remote Config プロジェクトを設定する必要があります。

Firebase コンソールで [新規プロジェクトを作成] をクリックし、次のパラメータを使用して Firebase Remote Config プロジェクトの設定手順に沿って操作します。

パラメータキー デフォルト値 注:
welcome_message Welcome to this sample app 別のウェルカム メッセージを使用するように変更します。
welcome_message_caps false ウェルカム メッセージをすべて大文字で表示する場合は true に設定します。

プロジェクトの設定後、クイックスタート サンプルを実行すると Firebase コンソールで定義したウェルカム メッセージが表示されます。プロジェクトの上記のパラメータの値を変更してクイックスタート サンプルの [Fetch Remote Config] をタップすると、Remote Config によってアプリをどのように更新できるかを確認できます。

クイックスタート サンプルをビルドして実行する

  1. クイックスタート サンプルのコードをダウンロードして解凍します。

  2. ターミナル ウィンドウを開き、サンプル プロジェクトの場所に移動します。pod install を実行し、.xcworkspace ファイルを開きます。

  3. サンプルをビルドして実行します。

仕組み

サンプルはまず Remote Config オブジェクトのインスタンスを取得し、最小フェッチ間隔を設定して更新の頻度を増やせるようにします。

Swift

Objective-C

次に、サンプルはアプリ内デフォルト値を plist ファイルから取得します。

Swift

Objective-C

サンプルは、キャッシュに保存された値の代わりに Remote Config サービスから値をフェッチし、それらの値をアプリで使用できるようにするために activateWithCompletionHandler: を呼び出します。

Swift

Objective-C

ウェルカム メッセージが更新されると、更新されたウェルカム メッセージをアプリに表示できるようになります。

Swift

Objective-C

Remote Config パラメータには、stringValuenumberValuedataValueboolValue プロパティのいずれか、または configValueForKey: メソッドを使ってアクセスできます。

スロットル処理

アプリが短期間に何度もフェッチすると、フェッチ呼び出しが抑制される可能性があります。そのような場合、バックエンドは FIRRemoteConfigFetchStatusThrottled を返します。このエラーをキャッチして、指数バックオフモード(後続のフェッチ リクエスト間隔をより長くする)で再試行することをおすすめします。

アプリの開発中は、開発とテストを繰り返すためのイテレーションがすばやくできるように、頻繁なキャッシュの更新(1 時間に何度も)が必要となることがあります。10 人程度のデベロッパーがいるプロジェクトで迅速なイテレーションに対応するには、アプリ内で最小フェッチ間隔(MinimumFetchInterval)を小さく設定した FIRRemoteConfigSettings プロパティを一時的に追加します。

Remote Config のデフォルトの最小フェッチ間隔は 12 時間です。つまり、実際にフェッチ呼び出しが行われた回数に関係なく、12 時間のウィンドウ内で構成がバックエンドから複数回フェッチされることはありません。具体的には、次の順で最小フェッチ間隔が決定されます。

  1. 次にあるパラメータ: fetch(long)
  2. 次にあるパラメータ: FIRRemoteConfigSettings.MinimumFetchInterval
  3. デフォルト値(12 時間)