2016-05-24 11 views
1

私は自分のアプリにFirebase Remote Configを追加しました。それは正常に設定を取得しますが、常に0を返します。私が使用しているコードは以下の通りです。違いがあれば、現在はviewDidLoadにありますか?Firebase Remote Configが0(Swift iOS)を返す

は、リモートコンフィグ稼働して取得するために必要なもののいくつかがあります。あなたに

let remoteConfig = FIRRemoteConfig.remoteConfig() 
let iTry = remoteConfig["iTryAgainSessions"].numberValue! 
let tryInt = Int(iTry) 
print("I Try: \(tryInt)") 

答えて

5

ありがとうございました

  1. デフォルト値の設定:値がサーバーからまだ取得されていない場合に使用されるデフォルト値を設定できます。デフォルト値は、FIRRemoteConfig setDefaultsメソッドを使用して設定できます。デフォルトが設定されていない場合、初期静的値が返されます。あなたは数の初期静的値以来numberValueに0を得続ける理由は、あなたの場合は0

    // Set default values from plist file. 
    self.remoteConfig = [FIRRemoteConfig remoteConfig]; 
    [self.remoteConfig setDefaultsFromPlistFileName:@"RemoteConfigDefaults"]; 
    
  2. は、リモートの値を取得している:あなたは、サーバー上で設定された値を取得するための方法をフェッチFIRRemoteConfigを呼び出すことができます。

  3. フェッチされた値の適用:フェッチが成功した後、FIRRemoteConfig activateFetchedメソッドを呼び出して、サーバーから取得した値を適用する必要があります。これは、新しい値が取得されたときにアプリケーションが突然変更されるのを防ぐためです。したがって、activateFetchedメソッドは、これらの値がいつ使われるかを制御します。フェッチが返されるとすぐにactivateFetchedを呼び出すことができます。

  4. デベロッパーモードを有効にして、サーバーから設定値を取得できるようにする必要があります。プロダクションアプリでは、キャッシュされた値が1時間あたり5リクエストに制限されています時間の残りの部分。

上記のhereを示すサンプルを試してみてください。

+0

私はサンプルを見て、それは美しく動作します!ご協力いただきありがとうございます。 –

+0

2つの質問: 1.コンソールでゼロ以外の値を設定しますが、リモート値を取得するたびにゼロの値が返されます。 2. setDefaultsFromPlistFileNameが実行されると、コンソール上の値も更新する必要がありますが、実際にはそれはなぜですか? – Jacky

+0

コードを見ずに言うのは難しいでしょう。フェッチコードで新しい質問をすることがあります。リモート値が表示されない理由を詳しく説明できます。 firebase-remote-configタグを必ず追加してください。 –

関連する問題