1

我已将 Firebase 远程配置添加到我的应用中。它成功获取配置但始终返回 0。我正在使用的代码如下。如果这viewDidLoad有什么不同吗?

谢谢

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

1 回答 1

7

启动和运行远程配置需要做一些事情。

  1. 设置默认值:您可以设置将在尚未从服务器获取值的情况下使用的默认值。可以使用 FIRRemoteConfig setDefaults 方法设置默认值。如果未设置默认值,则将返回初始静态值。在您的情况下,这就是为什么您不断为 numberValue 获得 0,因为 number 的初始静态值为 0。

    // Set default values from plist file.
    self.remoteConfig = [FIRRemoteConfig remoteConfig];
    [self.remoteConfig setDefaultsFromPlistFileName:@"RemoteConfigDefaults"];
    
  2. 获取远程值:您可以调用 FIRRemoteConfig 获取方法来获取服务器上设置的值。

  3. 应用获取的值:成功获取后,您必须调用 FIRRemoteConfig activateFetched 方法来应用从服务器检索到的值。这是为了防止您的应用程序在获取新值时突然发生变化,因此 activateFetched 方法可以让您控制何时使用这些值。如果这是您想要的,请在 fetch 返回后立即调用 activateFetched。

  4. 请注意,您应该启用开发人员模式,以便您有更多机会从服务器获取配置值,在生产应用程序中,每小时限制为 5 个请求,之后缓存的值将用于该小时的剩余时间.

在此处尝试演示上述内容的示例。

于 2016-05-24T17:53:20.583 回答