优化
Some checks failed
Test Build / prepare (push) Has been cancelled
Test Build / build (app, release) (push) Has been cancelled
Test Build / build (app, releaseA) (push) Has been cancelled
Test Build / prerelease (push) Has been cancelled
Test Build / lanzou (push) Has been cancelled
Test Build / test_Branch (push) Has been cancelled
Test Build / telegram (push) Has been cancelled
closeStaleIssue / stale (push) Has been cancelled

This commit is contained in:
Horis
2025-02-25 11:38:23 +08:00
parent 71c67c8826
commit bfc1b7fabb
2 changed files with 15 additions and 19 deletions

View File

@@ -22,7 +22,6 @@ import io.legado.app.model.ReadBook
import io.legado.app.model.localBook.LocalBook
import io.legado.app.model.webBook.WebBook
import io.legado.app.utils.GSON
import io.legado.app.utils.LogUtils
import io.legado.app.utils.cnCompare
import io.legado.app.utils.fromJsonObject
import io.legado.app.utils.printOnDebug
@@ -70,8 +69,6 @@ object BookController {
fun getCover(parameters: Map<String, List<String>>): ReturnData {
val returnData = ReturnData()
val coverPath = parameters["path"]?.firstOrNull()
val startAt = System.currentTimeMillis()
LogUtils.d("BookController", "Start getCover($startAt) $coverPath")
val ftBitmap = ImageLoader.loadBitmap(appCtx, coverPath)
.override(84, 112)
.centerCrop()
@@ -79,27 +76,20 @@ object BookController {
return try {
returnData.setData(ftBitmap.get(3, TimeUnit.SECONDS))
} catch (e: Exception) {
LogUtils.d("BookController", "Error getCover($startAt) $coverPath\n$e")
try {
val cached = defaultCoverCache[BookCover.defaultDrawable]
if (cached == null) {
val defaultBitmap = Glide.with(appCtx)
val defaultBitmap = defaultCoverCache.getOrPut(BookCover.defaultDrawable) {
Glide.with(appCtx)
.asBitmap()
.load(BookCover.defaultDrawable.toBitmap())
.override(84, 112)
.centerCrop()
.submit()
.get(3, TimeUnit.SECONDS)
defaultCoverCache[BookCover.defaultDrawable] = defaultBitmap
returnData.setData(defaultBitmap)
} else {
returnData.setData(cached)
.get()
}
returnData.setData(defaultBitmap)
} catch (e: Exception) {
returnData.setErrorMsg(e.localizedMessage ?: "getCover error")
}
} finally {
LogUtils.d("BookController", "End getCover($startAt) $coverPath")
}
}
@@ -121,7 +111,7 @@ object BookController {
this.bookUrl = bookUrl
val bitmap = runBlocking {
ImageProvider.cacheImage(book, src, bookSource)
ImageProvider.getImage(book, src, width)!!
ImageProvider.getImage(book, src, width)
}
return returnData.setData(bitmap)
}
@@ -210,7 +200,7 @@ object BookController {
if (content != null) {
val contentProcessor = ContentProcessor.get(book.name, book.origin)
content = runBlocking {
contentProcessor.getContent(book, chapter, content!!, includeTitle = false)
contentProcessor.getContent(book, chapter, content, includeTitle = false)
.toString()
}
return returnData.setData(content)

View File

@@ -30,7 +30,9 @@ class HttpServer(port: Int) : NanoHTTPD(port) {
var uri = session.uri
val startAt = System.currentTimeMillis()
LogUtils.d(TAG, "${session.method.name} - $uri - ${session.queryParameterString} - Start($startAt)")
LogUtils.d(TAG) {
"${session.method.name} - $uri - ${session.queryParameterString} - Start($startAt)"
}
try {
when (session.method) {
@@ -130,10 +132,14 @@ class HttpServer(port: Int) : NanoHTTPD(port) {
}
response.addHeader("Access-Control-Allow-Methods", "GET, POST")
response.addHeader("Access-Control-Allow-Origin", session.headers["origin"])
LogUtils.d(TAG, "${session.method.name} - $uri - ${session.queryParameterString} - End($startAt)")
LogUtils.d(TAG) {
"${session.method.name} - $uri - ${session.queryParameterString} - End($startAt)"
}
return response
} catch (e: Exception) {
LogUtils.d(TAG, "${session.method.name} - $uri - ${session.queryParameterString} - Error End($startAt)\n$e\n${e.stackTraceStr}")
LogUtils.d(TAG) {
"${session.method.name} - $uri - ${session.queryParameterString} - Error End($startAt)\n$e\n${e.stackTraceStr}"
}
return newFixedLengthResponse(e.message)
}