diff --git a/app/src/main/java/io/legado/app/App.kt b/app/src/main/java/io/legado/app/App.kt index 010803100..a431354f2 100644 --- a/app/src/main/java/io/legado/app/App.kt +++ b/app/src/main/java/io/legado/app/App.kt @@ -10,6 +10,8 @@ import android.content.res.Configuration import android.graphics.BitmapFactory import android.os.Build import androidx.core.graphics.scale +import coil.ImageLoader +import coil.ImageLoaderFactory import com.github.liuyueyi.quick.transfer.constants.TransType import com.google.android.material.color.DynamicColors import com.google.android.material.color.DynamicColorsOptions @@ -64,6 +66,7 @@ import io.legado.app.utils.getPrefString import io.legado.app.utils.isDebuggable import kotlinx.coroutines.launch import org.chromium.base.ThreadUtils +import org.koin.android.ext.android.get import org.koin.android.ext.koin.androidContext import org.koin.core.context.GlobalContext.startKoin import splitties.init.appCtx @@ -73,10 +76,14 @@ import java.net.URL import java.util.concurrent.TimeUnit import java.util.logging.Level -class App : Application() { +class App : Application(), ImageLoaderFactory { private lateinit var oldConfig: Configuration + override fun newImageLoader(): ImageLoader { + return get() + } + override fun onCreate() { startKoin { androidContext(this@App) diff --git a/app/src/main/java/io/legado/app/ui/book/info/BookInfoViewModel.kt b/app/src/main/java/io/legado/app/ui/book/info/BookInfoViewModel.kt index d80faadd4..7a7fe003b 100644 --- a/app/src/main/java/io/legado/app/ui/book/info/BookInfoViewModel.kt +++ b/app/src/main/java/io/legado/app/ui/book/info/BookInfoViewModel.kt @@ -7,7 +7,7 @@ import android.graphics.Bitmap import android.net.Uri import androidx.core.graphics.drawable.toBitmap import androidx.lifecycle.viewModelScope -import coil.imageLoader +import coil.ImageLoader import coil.request.SuccessResult import io.legado.app.R import io.legado.app.base.BaseViewModel @@ -78,6 +78,7 @@ class BookInfoViewModel( private val changeBookSourceUseCase: ChangeBookSourceUseCase, private val clearBookCacheUseCase: ClearBookCacheUseCase, private val bookGroupRepository: BookGroupRepository, + private val imageLoader: ImageLoader, ) : BaseViewModel(application) { val allGroups = bookGroupRepository.flowAll() @@ -467,7 +468,7 @@ class BookInfoViewModel( loadOnlyWifi = CoverConfig.loadCoverOnlyWifi, crossfade = false ) - val result = context.imageLoader.execute(request) + val result = imageLoader.execute(request) if (result is SuccessResult) { val bitmap = result.drawable.toBitmap() val outputStream = ByteArrayOutputStream()