您可以使用 Firebase 远程配置来定义应用中的参数并在云端更新它们的值。这样,您无需更新应用即可修改应用的外观和行为。
远程配置库用于存储应用内默认参数值,从远程配置后端中提取更新后的参数值,以及控制提取的值何时可供应用使用。如需了解详情,请参阅远程配置加载策略。
将 Firebase 添加到您的应用
在使用 Firebase 远程配置之前,您需要先完成以下步骤:
注册 C++ 项目并将其配置为使用 Firebase。
如果您的 C++ 项目已在使用 Firebase,则表示您已注册该 C++ 项目并已将其配置为使用 Firebase。
请务必在项目级层
build.gradle
文件中的buildscript
和allprojects
部分添加 Google 的 Maven 代码库。将 Firebase C++ SDK 添加到您的 C++ 项目。
请注意,将 Firebase 添加到 C++ 项目涉及 Firebase 控制台和打开的 C++ 项目中的任务(例如,您从控制台下载 Firebase 配置文件,然后将它们移动到 C++ 项目中)。
将远程配置添加到您的应用
Android
将 Firebase 添加到您的应用后:
创建一个 Firebase 应用,并将 JNI 环境和 Activity 作为参数传入:
app = ::firebase::App::Create(::firebase::AppOptions(), jni_env, activity);
初始化远程配置库,如下所示:
::firebase::remote_config::Initialize(app);
iOS
将 Firebase 添加到您的应用后:
创建一个 Firebase 应用:
app = ::firebase::App::Create(::firebase::AppOptions());
初始化远程配置库,如下所示:
::firebase::remote_config::Initialize(app);
设置应用内默认参数值
您可以在远程配置对象中设置应用内默认参数值,以便应用在连接到远程配置后端之前能够按预期运行,并且在后端中尚未设置任何值时可以使用默认值。
- 使用
std::map<const char*, const char*>
对象或std::map<const char*, firebase::Variant>
对象定义一组参数名称和默认参数值。 - 使用
SetDefaults()
将这些值添加到远程配置对象。
获取要在应用中使用的参数值
现在,您可以从远程配置对象中获取参数值。如果您已在远程配置后端中设置值、提取然后激活它们,这些值便可供您的应用使用。否则,您将获得使用 SetDefaults() 配置的应用内参数值。
如需获取这些值,请调用下列与应用所需数据类型对应的方法,并以参数形式提供参数键:
在 Firebase 控制台中关联您的应用
在 Firebase 控制台中,将您的应用添加到 Firebase 项目中。
设置参数值
- 在 Firebase 控制台中,打开您的项目。
- 从菜单中选择远程配置以查看远程配置信息中心。
- 定义与您在应用中定义的参数同名的参数。对于每个参数,您可以设置默认值(最终将替换应用内默认值)和条件值。如需了解详情,请参阅远程配置参数和条件。
提取并激活值
- 如需从远程配置后端提取参数值,请调用
Fetch()
方法。系统将提取您在后端中设置的所有值,并缓存在远程配置对象中。 - 如需将提取的参数值提供给您的应用,请调用
ActivateFetched()
方法。
由于这些更新后的参数值会影响应用的行为和外观,因此您应该注意选择激活已提取的值的时机,例如在用户下次打开您的应用时激活,以确保为用户提供流畅的体验。