diff --git a/app/src/main/kotlin/eu/kanade/tachiyomi/ui/reader/loader/PageLoader.kt b/app/src/main/kotlin/eu/kanade/tachiyomi/ui/reader/loader/PageLoader.kt index 76a448898..2bc41bfa0 100644 --- a/app/src/main/kotlin/eu/kanade/tachiyomi/ui/reader/loader/PageLoader.kt +++ b/app/src/main/kotlin/eu/kanade/tachiyomi/ui/reader/loader/PageLoader.kt @@ -4,6 +4,7 @@ import androidx.annotation.CallSuper import androidx.collection.lruCache import com.hippo.ehviewer.image.Image import com.hippo.ehviewer.util.OSUtils +import com.hippo.ehviewer.util.isAtLeastO import eu.kanade.tachiyomi.source.model.Page import eu.kanade.tachiyomi.ui.reader.model.ReaderPage @@ -13,7 +14,11 @@ private const val MIN_CACHE_SIZE = 128 * 1024 * 1024 abstract class PageLoader { private val mImageCache = lruCache( - maxSize = (OSUtils.totalMemory / 16).toInt().coerceIn(MIN_CACHE_SIZE, MAX_CACHE_SIZE), + maxSize = if (isAtLeastO) { + (OSUtils.totalMemory / 16).toInt().coerceIn(MIN_CACHE_SIZE, MAX_CACHE_SIZE) + } else { + (OSUtils.appMaxMemory / 3 * 2).toInt() + }, sizeOf = { _, v -> v.size }, onEntryRemoved = { _, _, o, _ -> o.recycle() }, )