diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/data/implementation/ApiClientImpl.kt b/Habitica/src/main/java/com/habitrpg/android/habitica/data/implementation/ApiClientImpl.kt index cb2e9a9c0..ff647fe60 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/data/implementation/ApiClientImpl.kt +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/data/implementation/ApiClientImpl.kt @@ -2,6 +2,7 @@ package com.habitrpg.android.habitica.data.implementation import android.content.Context import com.amplitude.api.Amplitude +import com.facebook.FacebookSdk.getCacheDir import com.google.gson.JsonSyntaxException import com.habitrpg.android.habitica.BuildConfig import com.habitrpg.android.habitica.HabiticaBaseApplication @@ -37,6 +38,7 @@ import io.reactivex.android.schedulers.AndroidSchedulers import io.reactivex.functions.BiFunction import io.reactivex.functions.Consumer import io.reactivex.schedulers.Schedulers +import okhttp3.Cache import okhttp3.OkHttpClient import okhttp3.Request import okhttp3.logging.HttpLoggingInterceptor @@ -102,7 +104,12 @@ class ApiClientImpl//private OnHabitsAPIResult mResultListener; val timeZone = calendar.timeZone val timezoneOffset = -TimeUnit.MINUTES.convert(timeZone.getOffset(calendar.timeInMillis).toLong(), TimeUnit.MILLISECONDS) + val cacheSize: Long = 10 * 1024 * 1024 // 10 MB + + val cache = Cache(getCacheDir(), cacheSize) + val client = OkHttpClient.Builder() + .cache(cache) .addInterceptor(logging) .addNetworkInterceptor { chain -> val original = chain.request()