diff --git a/android/navi-common/src/main/java/com/navi/common/firebaseremoteconfig/FirebaseRemoteConfigHelper.kt b/android/navi-common/src/main/java/com/navi/common/firebaseremoteconfig/FirebaseRemoteConfigHelper.kt
index a0362458d8..30424dc565 100644
--- a/android/navi-common/src/main/java/com/navi/common/firebaseremoteconfig/FirebaseRemoteConfigHelper.kt
+++ b/android/navi-common/src/main/java/com/navi/common/firebaseremoteconfig/FirebaseRemoteConfigHelper.kt
@@ -129,6 +129,8 @@ object FirebaseRemoteConfigHelper {
"NAVI_PAY_REMOVE_APP_ON_INTENT_PAYMENT_SUCCESS"
const val NAVI_PAY_CL_MAX_RETRY_COUNT = "NAVI_PAY_CL_MAX_RETRY_COUNT"
const val NAVI_PAY_GENERIC_OFFERS_TTL_IN_MILLIS = "NAVI_PAY_GENERIC_OFFERS_TTL_IN_MILLIS"
+ const val NAVI_PAY_ARC_NUDGE_CACHE_SYNC_INTERVAL_IN_MILLIS =
+ "NAVI_PAY_ARC_NUDGE_CACHE_SYNC_INTERVAL_IN_MILLIS"
// COMMON
const val LITMUS_EXPERIMENTS_CACHE_DURATION_IN_MILLIS =
diff --git a/android/navi-common/src/main/java/com/navi/common/payments/arc/usecase/ArcNudgeSyncUseCase.kt b/android/navi-common/src/main/java/com/navi/common/payments/arc/usecase/ArcNudgeSyncUseCase.kt
index b84751bf2b..bae3454a5e 100644
--- a/android/navi-common/src/main/java/com/navi/common/payments/arc/usecase/ArcNudgeSyncUseCase.kt
+++ b/android/navi-common/src/main/java/com/navi/common/payments/arc/usecase/ArcNudgeSyncUseCase.kt
@@ -16,6 +16,7 @@ import com.navi.base.utils.retry
import com.navi.common.checkmate.model.MetricInfo
import com.navi.common.constants.DBCacheConstants.ARC_NUDGE_RESPONSE_CACHE_KEY
import com.navi.common.constants.DBCacheConstants.ARC_NUDGE_RESPONSE_CACHE_LAST_SYNC_TIMESTAMP_KEY
+import com.navi.common.firebaseremoteconfig.FirebaseRemoteConfigHelper
import com.navi.common.network.models.isSuccessWithData
import com.navi.common.payments.arc.model.network.ArcNudgeResponse
import com.navi.common.repo.NaviCommonRepository
@@ -29,8 +30,6 @@ constructor(
@NaviCommonGson private val gson: Gson,
) {
- private val ARC_CACHE_MIN_TIMESTAMP = 86400000L // 1 day
-
suspend fun execute(skipLastSyncedTimestampCheck: Boolean = false) {
val arcResponseCacheLastSyncTs =
@@ -38,7 +37,14 @@ constructor(
val lastSyncedTsDiff =
System.currentTimeMillis() - (arcResponseCacheLastSyncTs?.value?.toLong() ?: 0)
- val shouldSync = skipLastSyncedTimestampCheck || lastSyncedTsDiff > ARC_CACHE_MIN_TIMESTAMP
+ val shouldSync =
+ skipLastSyncedTimestampCheck ||
+ lastSyncedTsDiff >
+ FirebaseRemoteConfigHelper.getLong(
+ key =
+ FirebaseRemoteConfigHelper
+ .NAVI_PAY_ARC_NUDGE_CACHE_SYNC_INTERVAL_IN_MILLIS
+ )
if (!shouldSync) {
return
diff --git a/android/navi-common/src/main/res/xml/default_remote_config.xml b/android/navi-common/src/main/res/xml/default_remote_config.xml
index 80e484d360..86296f5b1f 100644
--- a/android/navi-common/src/main/res/xml/default_remote_config.xml
+++ b/android/navi-common/src/main/res/xml/default_remote_config.xml
@@ -674,4 +674,8 @@
NAVI_PAY_GENERIC_OFFERS_TTL_IN_MILLIS
1800000
+
+ NAVI_PAY_ARC_NUDGE_CACHE_SYNC_INTERVAL_IN_MILLIS
+ 86400000
+
\ No newline at end of file