Firebase Remote Config
无需发布应用更新就能更改 Web 客户端或服务器的行为和外观,没有任何费用,也没有日活跃用户数限制。
主要功能
向应用的用户群快速发布更改 | 您可以通过远程更改参数值来更改应用的默认行为和外观。例如,您可以将功能标志设置为 Remote Config 参数,这样无需发布应用更新,就能更改应用的布局或颜色主题以配合季节性促销。 |
为细分用户群量身打造应用 | 您可以使用 Remote Config 按应用版本、语言、Google Analytics 受众群体和导入的细分为应用的不同细分用户群提供不同的用户体验。 |
利用 Remote Config 个性化功能,针对各细分用户自动且持续地量身打造应用,并针对战略目标优化应用 | 利用机器学习技术,您可以使用 Remote Config 个性化功能持续地量身打造每位用户的体验,以针对用户互动度、广告点击次数和收入等目标或针对可通过 Google Analytics 进行衡量的任何自定义事件优化您的应用。 |
以迭代方式逐步向目标细分用户群发布新功能,并与自动预配的对照组进行对比 | 使用 Remote Config 发布以参数值作为功能标志来发布有针对性的更新,以逐步向用户发布新功能。通过对比接收发布值的启用组与同等规模的对照组的 Crashlytics 和 Google Analytics 结果,确定发布的稳定性及成功与否。 |
运行 A/B 测试以改进您的应用 | 您可以结合使用 A/B Testing 和适用于 Google Analytics 的随机百分比定位功能,在不同的细分用户群中进行 A/B 测试,以改进您的应用。这样一来,您可以先验证改进,然后再将其推向整个用户群。 |
工作原理
Remote Config 包括一个客户端库,可以处理如提取和缓存参数值等重要任务,同时仍让您能够控制何时激活新的值,从而左右应用用户的体验。这样,您就可以通过控制更改的时机来维持良好的应用体验。
建议向提取逻辑添加实时 Remote Config 功能,以便在有新的 Remote Config 参数值发布时立即自动提取这些最新的值。
Remote Config 客户端库中的各种 get
方法提供了统一的参数值访问点。应用在从 Remote Config 中提取值时所使用的逻辑与在获取应用内默认值时相同,因此您无需编写大量代码,就可以将 Remote Config 的各项功能添加到您的应用中。
如需替换应用内默认值,您可以使用 Firebase 控制台或 Remote Config 后端 API 来创建与应用中使用的参数同名的参数。对于每个参数,您可以在 Remote Config 中设置默认值来替换应用内默认值,也可以创建条件值来替换满足特定条件的应用实例的应用内默认值。
Remote Config 还在 Firebase Admin Node.js SDK 12.1.0 版及更高版本中提供了一个服务器客户端库。您的服务器实现可以使用该库从 Remote Config 存储的服务器专属模板中提取值。如需了解详情,请参阅在服务器环境中使用 Remote Config。
如需详细了解参数、条件以及 Remote Config 如何解决条件值之间的冲突,请参阅 Remote Config 参数和条件。
实现流程
为您的应用集成 Remote Config | 定义您希望能够使用 Remote Config 更改应用的行为和外观的哪些方面,并将这些转换为您将在应用中使用的参数。 | |
设置默认参数值 |
使用 setDefaults() 为 Remote Config 参数设置应用内默认值,并视需要下载 Remote Config 模板默认值。
|
|
添加用于提取、激活和获取参数值的逻辑 |
您的应用可以安全高效地从 Remote Config 后端定期提取参数值,并激活这些提取的值。通过实时 Remote Config,您的应用可在新的 Remote Config 版本发布后立即提取更新的值,而无需进行轮询。 这样,您在编写自己的应用时便不必担心提取值的最佳时机,甚至不用担心是否存在任何服务器端值。 您的应用使用 |
|
(根据需要)更新 Remote Config 中的默认值和条件参数值 |
您可以在 Firebase 控制台中或使用 Remote Config 后端 API 定义值来替换应用内默认值。在发布应用之前或之后,您都可以执行此操作,因为相同的 |
|
(根据需要)更新应用中的默认参数值 | 每当更新应用时,您都应将其默认参数值与 Remote Config 后端同步。您可以使用 XML、属性列表 (plist) 或 JSON 格式快速下载默认值文件,以使用 REST API 和 Firebase 控制台更新应用。如需了解详情,请参阅下载 Remote Config 模板默认值。 | |
利用 A/B Testing 和 Remote Config 个性化功能自定义用户体验,并确定实现目标的最佳参数值。 | 在应用中实现 Remote Config 后,您可以使用 A/B Testing 和 Remote Config 个性化等增强功能来测试、扩展和更新您的应用。 |
政策和限制
请注意以下政策:
- 不要使用 Remote Config 进行本应要求获得用户授权的应用更新。这可能会导致您的应用被视为不可信任。
- 不要在 Remote Config 参数键或参数值中存储机密数据。Remote Config 数据在传输过程中会加密,但最终用户可以访问其应用实例可用的任何默认或提取的 Remote Config 参数。
- 不要试图使用 Remote Config 规避应用的目标平台的要求。
Remote Config 参数和条件都受到一定的限制。 如需了解详情,请参阅参数和条件的限制。
请注意以下限制:
一个 Firebase 项目中每种类型的模板(客户端或服务器)可拥有 2,000 个 Remote Config 参数,这些参数需遵循参数和条件的限制中详述的长度和内容限制。
在 Firebase 中,每个类型的模板(客户端或服务器)在整个生命周期所能存储的 Remote Config 模板版本数上限为 300 个。此 300 版本生命周期限制包括已删除模板的存储版本号。如需了解详情,请参阅模板和版本控制。
您最多可以有 24 个在运行的 A/B 实验和 Remote Config 发布。
想要存储其他类型的数据?
- Cloud Firestore 是一种灵活且可扩容的数据库,适用于在 Firebase 和 Google Cloud 上进行移动、Web 和服务器开发。
- Firebase Realtime Database 可存储 JSON 应用数据(如游戏状态或聊天消息),还可以在所有已连接的设备上即时同步更改。如需详细了解各数据库方案之间的差异,请参阅选择数据库:Cloud Firestore 或 Realtime Database。
- Firebase Hosting 可托管您的网站的全局资源(包括 HTML、CSS 和 JavaScript)以及由开发者提供的资源(如图形、字体和图标)。
- Cloud Storage 可存储图像、视频和音频等文件,以及用户生成的其他内容。
后续步骤
- 查看典型的使用场景,了解 Remote Config 的功能。
- 开始设计。了解关键概念和策略,例如 Remote Config 参数和条件以及加载策略。
- 开始将 Remote Config 与您的应用集成。参阅适用于 Android、iOS+ 和 Web 应用的相关设置指南。
- 了解如何读取和以编程方式修改 Remote Config 参数值。
- 了解如何使用 A/B Testing 创建 Remote Config 实验。
- 了解如何利用 Remote Config 个性化功能,自动对每位用户的体验进行优化,从而帮助您实现目标。
- 了解如何使用 Remote Config 发布以迭代方式逐步向您的用户群发布新功能,并通过并排比较的 Crashlytics 和 Google Analytics 结果验证发布的稳定性及成功与否。
- 了解如何在服务器环境中使用 Remote Config。