Fix remote config update interval and lint error

pull/996/head
Alex Baker 6 years ago
parent b26f4b01c4
commit 2ce5281f98

@ -11,9 +11,10 @@ import io.fabric.sdk.android.Fabric
import org.tasks.billing.BillingClientImpl import org.tasks.billing.BillingClientImpl
import org.tasks.injection.ApplicationScope import org.tasks.injection.ApplicationScope
import org.tasks.injection.ForApplication import org.tasks.injection.ForApplication
import org.tasks.jobs.RemoteConfigWork import org.tasks.jobs.WorkManager
import org.tasks.preferences.Preferences import org.tasks.preferences.Preferences
import timber.log.Timber import timber.log.Timber
import java.util.concurrent.TimeUnit
import javax.inject.Inject import javax.inject.Inject
@ApplicationScope @ApplicationScope
@ -56,7 +57,8 @@ class Firebase @Inject constructor(@ForApplication context: Context?, preference
Fabric.with(context, Crashlytics()) Fabric.with(context, Crashlytics())
remoteConfig = FirebaseRemoteConfig.getInstance() remoteConfig = FirebaseRemoteConfig.getInstance()
remoteConfig?.setConfigSettingsAsync(remoteConfigSettings { remoteConfig?.setConfigSettingsAsync(remoteConfigSettings {
minimumFetchIntervalInSeconds = RemoteConfigWork.WORK_INTERVAL_HOURS minimumFetchIntervalInSeconds =
TimeUnit.HOURS.toSeconds(WorkManager.REMOTE_CONFIG_INTERVAL_HOURS)
}) })
} }
} }

@ -2,15 +2,10 @@ package org.tasks.jobs
import android.content.Context import android.content.Context
import androidx.work.WorkerParameters import androidx.work.WorkerParameters
import org.tasks.BuildConfig
import org.tasks.injection.InjectingWorker import org.tasks.injection.InjectingWorker
import org.tasks.injection.JobComponent import org.tasks.injection.JobComponent
class RemoteConfigWork(context: Context, workerParams: WorkerParameters) : InjectingWorker(context, workerParams) { class RemoteConfigWork(context: Context, workerParams: WorkerParameters) : InjectingWorker(context, workerParams) {
companion object {
@JvmField val WORK_INTERVAL_HOURS: Long = if (BuildConfig.DEBUG) 1 else 12
}
override fun run(): Result { override fun run(): Result {
firebase.updateRemoteConfig() firebase.updateRemoteConfig()
return Result.success() return Result.success()

@ -49,6 +49,7 @@ import timber.log.Timber;
@ApplicationScope @ApplicationScope
public class WorkManager { public class WorkManager {
public static final long REMOTE_CONFIG_INTERVAL_HOURS = BuildConfig.DEBUG ? 1 : 12;
private static final int MAX_CLEANUP_LENGTH = 500; private static final int MAX_CLEANUP_LENGTH = 500;
private static final String TAG_BACKUP = "tag_backup"; private static final String TAG_BACKUP = "tag_backup";
private static final String TAG_REFRESH = "tag_refresh"; private static final String TAG_REFRESH = "tag_refresh";
@ -217,7 +218,7 @@ public class WorkManager {
TAG_REMOTE_CONFIG, TAG_REMOTE_CONFIG,
ExistingPeriodicWorkPolicy.KEEP, ExistingPeriodicWorkPolicy.KEEP,
new PeriodicWorkRequest.Builder( new PeriodicWorkRequest.Builder(
RemoteConfigWork.class, RemoteConfigWork.WORK_INTERVAL_HOURS, TimeUnit.HOURS) RemoteConfigWork.class, REMOTE_CONFIG_INTERVAL_HOURS, TimeUnit.HOURS)
.setBackoffCriteria(BackoffPolicy.EXPONENTIAL, 1, TimeUnit.MINUTES) .setBackoffCriteria(BackoffPolicy.EXPONENTIAL, 1, TimeUnit.MINUTES)
.setConstraints( .setConstraints(
new Constraints.Builder().setRequiredNetworkType(NetworkType.CONNECTED).build()) new Constraints.Builder().setRequiredNetworkType(NetworkType.CONNECTED).build())

Loading…
Cancel
Save