Firebase 远程配置缓存在版本中的过期时间
Firebase remote config cache expiration time in release
我正在尝试通过将开发人员模式设置为 false
来为发布模式设置 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 小时。
我正在尝试通过将开发人员模式设置为 false
来为发布模式设置 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 小时。