哪种是存储 Firebase 远程配置默认值的最佳方式?

Posted

技术标签:

【中文标题】哪种是存储 Firebase 远程配置默认值的最佳方式?【英文标题】:which is the best way to store default values for Firebase Remote Config? 【发布时间】:2021-12-20 05:10:30 【问题描述】:

人们建议使用 .xml 文件,例如:

<entry>
    <key>onboarding_enabled</key>
    <value>false</value>
</entry>

但我已经将值存储在 BaseActivity 中,例如:

public boolean onboarding_enabled = false;

然后在 onCreate() 方法中:

onboarding_enabled = remoteConfig.getBoolean("onboarding_enabled");

我更喜欢保留值,但在 onCreate 方法中调用远程配置。它会这样工作吗?存储默认值是否更好?

【问题讨论】:

【参考方案1】:

从 XML 文件设置默认参数值的方法是 Google 的official instruction。我会遵循的。

我想,你定义变量默认值的方式并不可取,因为这些 FirebaseRemoteConfig#getBoolean#getDouble#getLong#getString,它们总是返回值.也就是说,您的默认值——在声明时预先定义——永远不会被使用。

例如FirebaseRemoteConfig#getBoolean 状态:

按以下顺序评估参数的值:

    激活的值,如果最后一个成功的activate()包含key,该值可以转化为布尔值。 默认值,如果key是用setDefaultsAsync设置的,值可以转换成布尔值。 DEFAULT_VALUE_FOR_BOOLEAN

如果您的 FireBaseRemoteConfig 尚未通过网络获取配置值,它首先使用 XML 文件中定义的值,如果 XML 不可用,它使用 DEFAULT_VALUE_FOR_BOOLEAN (= false) 作为第二选择。没有空间可用于您的预定义值。

【讨论】:

以上是关于哪种是存储 Firebase 远程配置默认值的最佳方式?的主要内容,如果未能解决你的问题,请参考以下文章

哪种是对 Spring Boot Rest API 进行端到端测试的最佳方法? [关闭]

在 Firebase 远程配置中定义布尔变量的最佳方法是啥

哪种是测试 Flutter 应用程序的最佳方法

哪种是临时保存原始数据的最佳方式? [关闭]

通过向已有默认值的 TextField 输入新值来更新存储在 Firebase 上的数据

统一的 Firebase 远程配置仅获取默认值而不是真实值