android - Firebase 远程配置缓存在版本中的过期时间

标签 android firebase firebase-remote-config

我正在尝试通过将开发人员模式设置为 false 来为 Release模式设置 firebase 远程配置。但是缓存过期时间小于3000秒(可能会少一些,实验确定的)秒,就取不到数据了。它抛出 FirebaseRemoteConfigFetchThrottledException

FirebaseRemoteConfigSettings configSettings = new FirebaseRemoteConfigSettings.Builder()
                        .setDeveloperModeEnabled(false)
                        .build();

并且使用 .setDeveloperModeEnabled(true) 它允许我设置任何时间甚至 0 并且运行良好。

这是完整的大块头:

new Handler().postDelayed(new Runnable() {
        @Override
        public void run() {
            mFirebaseRemoteConfig = FirebaseRemoteConfig.getInstance();
            FirebaseRemoteConfigSettings configSettings = new FirebaseRemoteConfigSettings.Builder()
                    .setDeveloperModeEnabled(false)
                    .build();

            mFirebaseRemoteConfig.setConfigSettings(configSettings);
            mFirebaseRemoteConfig.setDefaults(R.xml.remote_config_defaults);

            mFirebaseRemoteConfig.fetch(CACHE_EXPIRATION)
                    .addOnSuccessListener(new OnSuccessListener<Void>() {
                        @Override
                        public void onSuccess(Void aVoid) {
                            Log.i("info32", "remote config succeeded");
                            mFirebaseRemoteConfig.activateFetched();
                        }
                    })
                    .addOnFailureListener(new OnFailureListener() {
                        @Override
                        public void onFailure(@NonNull Exception exception) {
                            Log.i("info32", "remote config failed");
                        }
                    });
        }
    }, 0);

您能解释一下问题是什么吗?

最佳答案

Remote Config 实现客户端节流,以防止有缺陷或恶意的客户端使用高频提取请求冲击 Firebase 服务器。一位用户报告说限制是每小时五个请求。我没有在任何地方找到记录的限制,尽管我已经确认五次快速提取将激活节流。

配置值的缓存在 the documentation 中解释。 .由于限制,您发布的应用不可能立即看到远程配置值的更改。在允许下一次提取之前,将使用缓存的值。默认缓存过期时间为 12 小时。

关于android - Firebase 远程配置缓存在版本中的过期时间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38633937/

相关文章:

firebase-remote-config - Firebase RemoteConfig fetch 是否继续监听更改?

firebase - 无需身份验证即可调用 Firebase 远程配置 REST API

java - 服务调用没有任何反应

java - 可以使用哪些不同类型的上下文来代替 Activity ?

Firebase 规则自行重置

java - 如何在没有 EventListener 的情况下从 Firebase 检索数据?

ios - 使用 Firebase RemoteConfiguration 我无法覆盖 .plist 文件中的默认配置

android - 什么是 android.enableD8=false 的替代方案,因为它已被弃用

android - 如何在 android 中实现 Drag Distortion Image 过滤器?

swift - 两个纬度之间的Firebase查询