前往主控台

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

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

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

将 Firebase 添加至您的应用

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

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

    如果您的 C++ 项目已经在使用 Firebase,则说明该项目已经注册并且针对 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. 从菜单中选择 Remote Config(远程配置)以查看远程配置信息中心。
  3. 根据您在应用中指定的参数名称来指定参数。对于每个参数,您可以设置一个默认值(最终将覆盖应用内默认值)和条件值。如需了解详情,请参阅远程配置参数和条件

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

  1. 要从远程配置服务提取参数值,请调用 Fetch() 方法。系统将提取您在远程配置服务中设置的所有值,并缓存在远程配置对象中。
  2. 要让提取的参数值可供您的应用使用,请调用 ActivateFetched() 方法。

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