优化
This commit is contained in:
@@ -22,7 +22,6 @@ import io.legado.app.model.ReadBook
|
|||||||
import io.legado.app.model.localBook.LocalBook
|
import io.legado.app.model.localBook.LocalBook
|
||||||
import io.legado.app.model.webBook.WebBook
|
import io.legado.app.model.webBook.WebBook
|
||||||
import io.legado.app.utils.GSON
|
import io.legado.app.utils.GSON
|
||||||
import io.legado.app.utils.LogUtils
|
|
||||||
import io.legado.app.utils.cnCompare
|
import io.legado.app.utils.cnCompare
|
||||||
import io.legado.app.utils.fromJsonObject
|
import io.legado.app.utils.fromJsonObject
|
||||||
import io.legado.app.utils.printOnDebug
|
import io.legado.app.utils.printOnDebug
|
||||||
@@ -70,8 +69,6 @@ object BookController {
|
|||||||
fun getCover(parameters: Map<String, List<String>>): ReturnData {
|
fun getCover(parameters: Map<String, List<String>>): ReturnData {
|
||||||
val returnData = ReturnData()
|
val returnData = ReturnData()
|
||||||
val coverPath = parameters["path"]?.firstOrNull()
|
val coverPath = parameters["path"]?.firstOrNull()
|
||||||
val startAt = System.currentTimeMillis()
|
|
||||||
LogUtils.d("BookController", "Start getCover($startAt) $coverPath")
|
|
||||||
val ftBitmap = ImageLoader.loadBitmap(appCtx, coverPath)
|
val ftBitmap = ImageLoader.loadBitmap(appCtx, coverPath)
|
||||||
.override(84, 112)
|
.override(84, 112)
|
||||||
.centerCrop()
|
.centerCrop()
|
||||||
@@ -79,27 +76,20 @@ object BookController {
|
|||||||
return try {
|
return try {
|
||||||
returnData.setData(ftBitmap.get(3, TimeUnit.SECONDS))
|
returnData.setData(ftBitmap.get(3, TimeUnit.SECONDS))
|
||||||
} catch (e: Exception) {
|
} catch (e: Exception) {
|
||||||
LogUtils.d("BookController", "Error getCover($startAt) $coverPath\n$e")
|
|
||||||
try {
|
try {
|
||||||
val cached = defaultCoverCache[BookCover.defaultDrawable]
|
val defaultBitmap = defaultCoverCache.getOrPut(BookCover.defaultDrawable) {
|
||||||
if (cached == null) {
|
Glide.with(appCtx)
|
||||||
val defaultBitmap = Glide.with(appCtx)
|
|
||||||
.asBitmap()
|
.asBitmap()
|
||||||
.load(BookCover.defaultDrawable.toBitmap())
|
.load(BookCover.defaultDrawable.toBitmap())
|
||||||
.override(84, 112)
|
.override(84, 112)
|
||||||
.centerCrop()
|
.centerCrop()
|
||||||
.submit()
|
.submit()
|
||||||
.get(3, TimeUnit.SECONDS)
|
.get()
|
||||||
defaultCoverCache[BookCover.defaultDrawable] = defaultBitmap
|
|
||||||
returnData.setData(defaultBitmap)
|
|
||||||
} else {
|
|
||||||
returnData.setData(cached)
|
|
||||||
}
|
}
|
||||||
|
returnData.setData(defaultBitmap)
|
||||||
} catch (e: Exception) {
|
} catch (e: Exception) {
|
||||||
returnData.setErrorMsg(e.localizedMessage ?: "getCover error")
|
returnData.setErrorMsg(e.localizedMessage ?: "getCover error")
|
||||||
}
|
}
|
||||||
} finally {
|
|
||||||
LogUtils.d("BookController", "End getCover($startAt) $coverPath")
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -121,7 +111,7 @@ object BookController {
|
|||||||
this.bookUrl = bookUrl
|
this.bookUrl = bookUrl
|
||||||
val bitmap = runBlocking {
|
val bitmap = runBlocking {
|
||||||
ImageProvider.cacheImage(book, src, bookSource)
|
ImageProvider.cacheImage(book, src, bookSource)
|
||||||
ImageProvider.getImage(book, src, width)!!
|
ImageProvider.getImage(book, src, width)
|
||||||
}
|
}
|
||||||
return returnData.setData(bitmap)
|
return returnData.setData(bitmap)
|
||||||
}
|
}
|
||||||
@@ -210,7 +200,7 @@ object BookController {
|
|||||||
if (content != null) {
|
if (content != null) {
|
||||||
val contentProcessor = ContentProcessor.get(book.name, book.origin)
|
val contentProcessor = ContentProcessor.get(book.name, book.origin)
|
||||||
content = runBlocking {
|
content = runBlocking {
|
||||||
contentProcessor.getContent(book, chapter, content!!, includeTitle = false)
|
contentProcessor.getContent(book, chapter, content, includeTitle = false)
|
||||||
.toString()
|
.toString()
|
||||||
}
|
}
|
||||||
return returnData.setData(content)
|
return returnData.setData(content)
|
||||||
|
|||||||
@@ -30,7 +30,9 @@ class HttpServer(port: Int) : NanoHTTPD(port) {
|
|||||||
var uri = session.uri
|
var uri = session.uri
|
||||||
|
|
||||||
val startAt = System.currentTimeMillis()
|
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 {
|
try {
|
||||||
when (session.method) {
|
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-Methods", "GET, POST")
|
||||||
response.addHeader("Access-Control-Allow-Origin", session.headers["origin"])
|
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
|
return response
|
||||||
} catch (e: Exception) {
|
} 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)
|
return newFixedLengthResponse(e.message)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user