封面下载失败问题

This commit is contained in:
HapeLee
2026-05-17 02:06:44 +08:00
parent 207b00189f
commit 1e8365ec47
2 changed files with 11 additions and 3 deletions
+8 -1
View File
@@ -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)
@@ -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()