Mik*_*ike 5 android firebase-remote-config
在调试模式下,我已经将最小间隔设置为 0。目前,我为获取新数据所做的工作是在启动应用程序之前先清除应用程序存储空间。
这是我的代码:
private fun initRemoteConfig() {
remoteConfig = FirebaseRemoteConfig.getInstance()
configSettings = FirebaseRemoteConfigSettings.Builder()
.setMinimumFetchIntervalInSeconds(if (BuildConfig.DEBUG) 0 else 3600)
.build()
remoteConfig.setDefaultsAsync(R.xml.remote_config_defaults)
fetch()
}
private fun fetch() {
remoteConfig.fetchAndActivate()
.addOnCompleteListener {
if (it.isSuccessful) {
val updated = it.result
Logger.d(TAG, "Config params updated: $updated. Fetch and activate succeeded") // updated = false
checkVersion()
} else {
Logger.d(TAG, "Fetch failed")
}
}
}
Run Code Online (Sandbox Code Playgroud)
尝试这个
private fun initRemoteConfig() {
remoteConfig = FirebaseRemoteConfig.getInstance()
configSettings = FirebaseRemoteConfigSettings.Builder()
.setMinimumFetchIntervalInSeconds(if (BuildConfig.DEBUG) 0 else 3600)
.build()
remoteConfig.setConfigSettingsAsync(configSettings) //You missed this line
remoteConfig.setDefaultsAsync(R.xml.remote_config_defaults)
fetch()
}
private fun fetch() {
remoteConfig.fetchAndActivate()
.addOnCompleteListener(this) { task ->
if (task.isSuccessful) {
val updated = task.result
Logger.d(TAG, "Config params updated: $updated. Fetch and activate succeeded") // updated = false
checkVersion()
} else {
Logger.d(TAG, "Fetch failed")
}
}
}
Run Code Online (Sandbox Code Playgroud)
我将代码从 更改fetchAndActivate为fetch,它似乎按预期工作。我现在正在从 Firebase 获取新数据。
这是我更新的代码:
private fun fetch() {
val fetch = remoteConfig.fetch(if (BuildConfig.DEBUG) 0 else TimeUnit.HOURS.toSeconds(12))
fetch.addOnCompleteListener {
if (it.isSuccessful) {
remoteConfig.activate()
Logger.d(TAG, "Fetch and activate succeeded")
checkVersion()
} else {
Logger.d(TAG, "Fetch failed")
}
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3836 次 |
| 最近记录: |