当前位置: 首页 > 知识库问答 >
问题:

Firebase远程配置-初始获取返回本地默认值

管和志
2023-03-14
mFirebaseRemoteConfig.fetch(cacheExpiration)
    .addOnCompleteListener(new OnCompleteListener<Void>() {
        @Override
        public void onComplete(@NonNull Task<Void> task) {
            if (task.isSuccessful()) {
                mFirebaseRemoteConfig.activateFetched();
            }
        }
    });
myValue = mFirebaseRemoteConfig.getBoolean(Constants.FIREBASE_REMOTE_MY_VALUE);
    null

知道为什么我的远程值在第一次调用时没有被提取吗?

共有1个答案

宗政法
2023-03-14

听起来好像您忽略了获取远程参数的异步特性。oncomplete()回调在向Firebase服务器发送请求并收到答复后触发。这将需要几分之一秒,也许更多。

如果语句使用提取的值:

myValue = mFirebaseRemoteConfig.getBoolean(Constants.FIREBASE_REMOTE_MY_VALUE);

在调用fetch()之后,并且不在oncomplete()回调中,它将在收到配置数据之前执行。第二次调用似乎工作了,因为已经过了足够的时间来完成第一次调用,并且它获取和激活的数据已经存在。

 类似资料:
  • 我正在尝试设置Firebase远程配置。在我的项目中一个重要的部分是正确的定位。所以我在Console中设置了不同语言的条件。但现在我想将默认值设为XML。github上的示例非常简单。没有任何条件的值就很少。文档根本没有描述这种格式。所以我想知道是否可以在defaults.xml中指定我的所有本地化,以及我如何做到这一点。

  • 我已经为flutter设置了firebase配置 根据文档https://pub.dev/packages/firebase_remote_config#-readme-tab- 我的钥匙是 Flutter应用程序中的远程配置在获取时引发异常

  • 在示例应用程序中,在中调用fetch方法。它真的是一个做这件事的好地方吗?该应用程序可以使用几周(从前台移动到后台,反之亦然,打开新活动并返回到主活动),并且不会再次调用主活动中的。我不认为这是一个好的解决方案,我的应用程序不会更新我的配置这么长时间。 更新:只在方法中获取配置值是非常糟糕的,应该在中进行某种检查。这里还有一些有用的信息:https://firebase.googleblog.co

  • 我正在尝试在Spring中使用MessageSource注入文本消息。我编写的程序编译良好,但它总是打印出默认消息,而不是从. Properties文件中获取正确的值。我一点线索也没有。 下面是尝试注入文本的Circle类: 下面是bean配置文件的一部分: 我存储问候语和画图。圈入消息。属性文件,并编写了一个主类。但输出总是: 有人知道我的情况可能会出什么问题吗? 更新感谢您的建议。我正在调试,

  • 考虑以下代码 VS2013编译器发出以下警告: 警告C4351:新行为:数组“B::member”的元素将默认初始化1 这里有记载 使用C 11,并应用“默认初始化”的概念,意味着B. part的元素将不会被初始化。 但我认为,成员{}应该执行值初始化,而不是默认初始化。VS2013编译器是否损坏? 8.5美元/6 默认初始化类型为T的对象意味着:-如果T是(可能是cv限定的)类类型(第9条),则

  • 我正在开发一个Android程序,使用Firebase数据库,但我现在有问题。 这是我的代码主要活动: