Перейти к консоли

将 Firebase 远程配置与 C++ 配合使用

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

远程配置库用于存储应用内默认参数值,从远程配置后端中提取更新后的参数值,以及控制提取的值何时可供应用使用。如需了解详情,请参阅远程配置加载策略

将 Firebase 添加到您的应用

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

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

    如果您的 C++ 项目已在使用 Firebase,则表示您已注册该 C++ 项目并已将其配置为使用 Firebase。

  • 请务必在项目级层 build.gradle 文件中的 buildscriptallprojects 部分添加 Google 的 Maven 代码库。

  • Firebase C++ SDK 添加到您的 C++ 项目。

请注意,将 Firebase 添加到 C++ 项目涉及 Firebase 控制台和打开的 C++ 项目中的任务(例如,您从控制台下载 Firebase 配置文件,然后将它们移动到 C++ 项目中)。

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

Android

将 Firebase 添加到您的应用后:

  1. 创建一个 Firebase 应用,并将 JNI 环境和 Activity 作为参数传入:

    app = ::firebase::App::Create(::firebase::AppOptions(), jni_env, activity);

  2. 初始化远程配置库,如下所示:

    ::firebase::remote_config::Initialize(app);

iOS

将 Firebase 添加到您的应用后:

  1. 创建一个 Firebase 应用:

    app = ::firebase::App::Create(::firebase::AppOptions());

  2. 初始化远程配置库,如下所示:

    ::firebase::remote_config::Initialize(app);

设置应用内默认参数值

您可以在远程配置对象中设置应用内默认参数值,以便应用在连接到远程配置后端之前能够按预期运行,并且在后端中尚未设置任何值时可以使用默认值。

  1. 使用 std::map<const char*, const char*> 对象或 std::map<const char*, firebase::Variant> 对象定义一组参数名称和默认参数值。
  2. 使用 SetDefaults() 将这些值添加到远程配置对象。

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

现在,您可以从远程配置对象中获取参数值。如果您已在远程配置后端中设置值、提取然后激活它们,这些值便可供您的应用使用。否则,您将获得使用 SetDefaults() 配置的应用内参数值。

如需获取这些值,请调用下列与应用所需数据类型对应的方法,并以参数形式提供参数键:

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

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

设置参数值

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

提取并激活值

  1. 如需从远程配置后端提取参数值,请调用 Fetch() 方法。系统将提取您在后端中设置的所有值,并缓存在远程配置对象中。
  2. 如需将提取的参数值提供给您的应用,请调用 ActivateFetched() 方法。

由于这些更新后的参数值会影响应用的行为和外观,因此您应该注意选择激活已提取的值的时机,例如在用户下次打开您的应用时激活,以确保为用户提供流畅的体验。