From 947fccfb4e34d728b1c73c9417188cc22450bd57 Mon Sep 17 00:00:00 2001 From: Canny Date: Fri, 23 Dec 2022 22:07:22 +0300 Subject: [PATCH] feat: use ktor for caching --- app/build.gradle.kts | 2 +- .../main/java/app/revanced/manager/di/HttpModule.kt | 12 ++++++------ 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/app/build.gradle.kts b/app/build.gradle.kts index 82409a9..ee15645 100644 --- a/app/build.gradle.kts +++ b/app/build.gradle.kts @@ -120,7 +120,7 @@ dependencies { implementation("com.mikepenz:aboutlibraries-compose:10.5.1") // Ktor - val ktorVersion = "2.1.3" + val ktorVersion = "2.2.1" implementation("io.ktor:ktor-client-core:$ktorVersion") implementation("io.ktor:ktor-client-logging:$ktorVersion") implementation("io.ktor:ktor-client-okhttp:$ktorVersion") diff --git a/app/src/main/java/app/revanced/manager/di/HttpModule.kt b/app/src/main/java/app/revanced/manager/di/HttpModule.kt index f046b95..5af1ce5 100644 --- a/app/src/main/java/app/revanced/manager/di/HttpModule.kt +++ b/app/src/main/java/app/revanced/manager/di/HttpModule.kt @@ -1,17 +1,14 @@ package app.revanced.manager.di import android.content.Context -import android.util.Log -import app.revanced.manager.util.tag import io.ktor.client.* import io.ktor.client.engine.okhttp.* +import io.ktor.client.plugins.cache.* +import io.ktor.client.plugins.cache.storage.* import io.ktor.client.plugins.contentnegotiation.* -import io.ktor.client.plugins.logging.* import io.ktor.serialization.kotlinx.json.* import kotlinx.serialization.json.Json -import okhttp3.Cache import okhttp3.Dns -import okhttp3.Protocol import org.koin.android.ext.koin.androidContext import org.koin.core.module.dsl.singleOf import org.koin.dsl.module @@ -32,7 +29,6 @@ val httpModule = module { } } }) - cache(Cache(context.cacheDir.resolve("cache").also { it.mkdirs() }, 1024 * 1024 * 100)) followRedirects(true) followSslRedirects(true) } @@ -40,6 +36,10 @@ val httpModule = module { install(ContentNegotiation) { json(json) } + install(HttpCache) { + val cache = context.cacheDir.resolve("cache") + publicStorage(FileStorage(cache)) + } } fun provideJson() = Json {