Join us for Firebase Summit on November 10, 2021. Tune in to learn how Firebase can help you accelerate app development, release with confidence, and scale with ease. Register

Firebase Remote Config

无需发布应用更新就能更改应用的行为和外观,没有任何费用,亦无日活跃用户数限制。

Firebase 远程配置是一种云服务,让您可以更改应用的行为和外观,而无需用户下载应用更新。使用远程配置时,您可以创建应用内默认值以控制应用的行为和外观。之后,您便可以使用 Firebase 控制台或远程配置后端 API 为所有应用用户或细分用户群替换应用内默认值。您的应用可控制何时安装更新,并能经常检查有无更新并安装,且对性能的影响微乎其微。

iOS 设置 Android 设置 网络设置 C ++设置 Unity 设置 后端 API

主要功能

向应用的用户群快速发布更改 您可以通过更改服务器端参数值来更改应用的默认行为和外观。例如,您无需发布应用更新,就能更改应用的布局或颜色主题以配合季节性促销。
针对细分用户群量身打造应用 您可以使用 Remote Config 按应用版本、语言、Google Analytics(分析)受众群体导入的细分为应用的不同细分用户群提供不同的用户体验。
运行 A/B 测试以改进您的应用 您可以使用远程配置随机百分位定向与 Google Analytics(分析)在不同的细分用户群中进行 A/B 测试,以改进您的应用。这样一来,您可以先验证改进,然后再将其推向整个用户群。

工作方式

远程配置包括一个客户端库,可以处理如提取和缓存参数值等重要任务,同时仍让您能够控制何时激活新的值,从而左右应用用户的体验。 这样,您就可以通过控制更改的时机来维持良好的应用体验。

远程配置客户端库中的各种 get 方法提供了统一的参数值访问点。应用在获取服务器端值时所使用的逻辑与在获取应用内默认值时相同,因此您无需编写大量代码,就可以将远程配置的各项功能添加到您的应用中。

如需替换应用内默认值,您可以使用 Firebase 控制台或远程配置后端 API 来创建与应用中使用的参数同名的参数。对于每个参数,您可以设置服务器端默认值来替换应用内默认值,也可以创建条件值来替换满足特定条件的应用实例的应用内默认值。下图展示了参数值在 Remote Config 后端和应用中的优先级排序:

如需详细了解参数、条件以及 Remote Config 如何解决条件值之间的冲突,请参阅 Remote Config 参数和条件

实现流程

为您的应用集成远程配置 定义您希望能够使用远程配置更改应用的行为和外观的哪些方面,并将这些转换到您将在应用中使用的参数中。
设置默认参数值 使用 setDefaults() 为远程配置参数设置应用内默认值。
添加用于提取、激活和获取参数值的逻辑 您的应用可以安全高效地从远端配置后端提取参数值,并激活这些提取的值。因此,您在编写自己的应用时不必担心提取值的最佳时机,甚至不用担心是否存在任何服务器端值。您的应用使用 get 方法获取参数的值,这与读取应用中定义的局部变量的值类似。
(根据需要)更新服务器端默认值和条件参数值 您可以在 Firebase 控制台或远程配置后端 API 中定义值来替换应用内默认值。在发布应用之前或之后,您都可以执行此操作,因为相同的 get 方法既可以访问应用内默认值,也可以访问从远程配置后端中提取的值。

政策和限制

请注意以下政策:

  • 不要使用远程配置进行本应要求获得用户授权的应用更新。这可能会导致您的应用被视为不可信任。
  • 不要在远程配置参数键或参数值中存储机密数据。您项目的远程配置设置中存储的任何参数键或值都有可能被解码。
  • 不要试图使用 Remote Config 规避应用的目标平台的要求。

Remote Config 参数和条件都受到一定的限制。 如需了解详情,请参阅参数和条件的限制

请注意以下限制:

  • 一个 Firebase 项目可拥有 2000 个远程配置参数,这些参数需遵循参数和条件的限制中详述的长度和内容限制。

  • Firebase 最多可存储 300 个版本的远程配置模板,存储的任何模板的最长有效期为 90 天。请参阅模板和版本控制

想要存储其他类型的数据?

  • Cloud Firestore 是一种灵活且可扩缩的数据库,适用于在 Firebase 和 Google Cloud 上进行移动、Web 和服务器开发。
  • Firebase Realtime Database 可存储 JSON 应用数据(如游戏状态或聊天消息),还可以在所有已连接的设备上即时同步更改。如需详细了解数据库选项之间的差异,请参阅选择数据库:Cloud Firestore 或实时数据库
  • Firebase 托管可托管您的网站的全局资源(包括 HTML、CSS 和 JavaScript)以及由开发者提供的资源(如图形、字体和图标)。
  • Cloud Storage 可存储图像、视频和音频等文件,以及用户生成的其他内容。

后续步骤