Vai alla console

Firebase 远程配置使用入门 (Unity)

您可以使用 Firebase 远程配置来定义应用中的参数并在云端更新它们的值。这样,您无需更新应用即可修改应用的外观和行为。

远程配置库用于存储应用内默认参数值,从服务中提取更新后的参数值,以及控制何时将提取的值用于您的应用。如需了解详情,请参阅 Remote Config API 概览

将远程配置添加至您的应用

在使用远程配置之前,您需要先完成以下步骤:

  • 注册 Unity 项目并将其配置为使用 Firebase。

    • 如果您的 Unity 项目已在使用 Firebase,那么您就已注册该 Unity 项目并已将其配置为使用 Firebase。

    • 如果您还没有 Unity 项目,可以下载一个示例应用

  • Firebase Unity SDK(具体而言是 FirebaseRemoteConfig.unitypackage)添加到您的 Unity 项目中。

请注意,将 Firebase 添加到 Unity 项目需要在 Firebase 控制台中和打开的 Unity 项目中执行若干任务(例如,从控制台下载 Firebase 配置文件,然后将配置文件移动到 Unity 项目中)。

设置应用内默认参数值

您可以在远程配置对象中设置应用内默认参数值,使您的应用可以在未从服务中检索到任何值时使用默认值。同时,使您的应用在连接至远程配置服务之前可以按预期工作。

为实现上述目标,请创建一个新的字符串字典,并在其中填充一些键值对,以代表您要添加的默认参数值。(当调用 SetDefaults 时,非字符串属性将被转化为该属性对应的类型。)

System.Collections.Generic.Dictionary defaults =
  new System.Collections.Generic.Dictionary();

// These are the values that are used if we haven't fetched data from the
// service yet, or if we ask for values that the service doesn't have:
defaults.Add("propertyname_string", "default local string");
defaults.Add("propertyname_int", 1);
defaults.Add("propertyname_float", 1.0);
defaults.Add("propertyname_bool", false);

Firebase.RemoteConfig.FirebaseRemoteConfig.SetDefaults(defaults);

获取要在应用中使用的参数值

现在,您可以从远程配置对象中获取参数值。若您在远程配置服务中设置、提取并激活了值,这些值便可以供您的应用使用。否则,您需要获取使用 setDefaults() 配置的应用内参数值。

要获取这些值,请使用 GetValue(),以参数形式提供参数键。这将返回一个 ConfigValue,其中包含将值转换为各种基类型的属性。

在 Firebase 控制台中关联您的应用

Firebase 控制台中,将您的应用添加到 Firebase 项目中。

在服务中设置参数值(若需要)

  1. Firebase 控制台中,打开您的项目。
  2. 从菜单中选择 Remote Config(远程配置)以查看远程配置信息中心。
  3. 根据您在应用中指定的参数名称来指定参数。对于每个参数,您可以设置一个默认值(最终将覆盖应用内默认值)和条件值。如需了解详情,请参阅远程配置参数和条件

从服务中提取和激活值(若需要)

要从远程配置服务提取参数值,请调用 FetchAsync() 方法。系统将提取您在远程配置服务中设置的所有值,并缓存在远程配置对象中。

当提取操作完成后,通过 FetchAsync() 提取的值将缓存在本地,直到调用 ActivateFetched() 之后才可使用。由于 FetchAsync() 是异步执行的,这可确保系统不会在计算过程中或在可能导致问题或奇怪行为的其他时间点激活新的值。

(可选)启用开发者模式

要启用开发者模式(可用于在开发过程中停用相关限制),您可以使用 FirebaseRemoteConfig.Setting 属性设置一个新的 ConfigSettings,并将 IsDeveloperMode 设置为 true。