TP-40395 | Coil disk caching (#7807)
This commit is contained in:
@@ -17,6 +17,8 @@ import android.view.LayoutInflater
|
||||
import android.view.View
|
||||
import android.view.WindowManager
|
||||
import androidx.appcompat.widget.AppCompatTextView
|
||||
import coil.ImageLoader
|
||||
import coil.ImageLoaderFactory
|
||||
import com.github.anrwatchdog.ANRWatchDog
|
||||
import com.google.android.play.core.splitcompat.SplitCompat
|
||||
import com.google.android.play.core.splitcompat.SplitCompatApplication
|
||||
@@ -29,6 +31,8 @@ import com.navi.base.sharedpref.PreferenceManager
|
||||
import com.navi.base.utils.AppLaunchUtils
|
||||
import com.navi.base.utils.isNotNullAndNotEmpty
|
||||
import com.navi.chat.base.ChatBaseActivity
|
||||
import com.navi.common.firebaseremoteconfig.FirebaseRemoteConfigHelper
|
||||
import com.navi.common.firebaseremoteconfig.FirebaseRemoteConfigHelper.COIL_IMAGE_LOADER_ENABLE_DISK_CACHING
|
||||
import com.navi.common.ui.activity.BaseActivity
|
||||
import com.navi.common.uitron.util.UiTronDependencyProvider
|
||||
import com.navi.pay.common.setup.NaviPayManager
|
||||
@@ -58,7 +62,7 @@ import javax.inject.Provider
|
||||
import com.navi.insurance.health.activity.BaseActivity as InsuranceBaseActivity
|
||||
|
||||
@HiltAndroidApp
|
||||
open class NaviApplication : SplitCompatApplication(), Application.ActivityLifecycleCallbacks {
|
||||
open class NaviApplication : SplitCompatApplication(), Application.ActivityLifecycleCallbacks, ImageLoaderFactory {
|
||||
|
||||
private var appForegroundCounter: Int = 0
|
||||
private var enableAppUpdate = true
|
||||
@@ -287,4 +291,20 @@ open class NaviApplication : SplitCompatApplication(), Application.ActivityLifec
|
||||
SplitCompat.install(base)
|
||||
}
|
||||
}
|
||||
|
||||
override fun newImageLoader(): ImageLoader {
|
||||
return try {
|
||||
if (FirebaseRemoteConfigHelper.getBoolean(COIL_IMAGE_LOADER_ENABLE_DISK_CACHING)) {
|
||||
ImageLoader.Builder(this.applicationContext)
|
||||
.respectCacheHeaders(enable = false)
|
||||
.build()
|
||||
} else {
|
||||
ImageLoader.Builder(this.applicationContext)
|
||||
.build()
|
||||
}
|
||||
} catch (e: Exception) {
|
||||
ImageLoader.Builder(this.applicationContext)
|
||||
.build()
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -63,6 +63,7 @@ object FirebaseRemoteConfigHelper {
|
||||
"NAVI_UPI_NOT_RESET_CL_SERVICE_ON_DISCONNECT"
|
||||
const val DISABLE_UPDATE_COMMUNICATION_MEDIUMS_ON_LOGIN =
|
||||
"DISABLE_UPDATE_COMMUNICATION_MEDIUMS_ON_LOGIN"
|
||||
const val COIL_IMAGE_LOADER_ENABLE_DISK_CACHING = "COIL_IMAGE_LOADER_ENABLE_DISK_CACHING"
|
||||
|
||||
fun init() {
|
||||
remoteConfig = getFirebaseRemoteConfig()
|
||||
|
||||
Reference in New Issue
Block a user