|
@@ -16,6 +16,7 @@ import io.legado.app.utils.FileUtils
|
|
|
import io.legado.app.utils.HtmlFormatter
|
|
import io.legado.app.utils.HtmlFormatter
|
|
|
import io.legado.app.utils.printOnDebug
|
|
import io.legado.app.utils.printOnDebug
|
|
|
import org.jsoup.Jsoup
|
|
import org.jsoup.Jsoup
|
|
|
|
|
+import java.io.File
|
|
|
import java.io.FileOutputStream
|
|
import java.io.FileOutputStream
|
|
|
import java.io.InputStream
|
|
import java.io.InputStream
|
|
|
|
|
|
|
@@ -70,6 +71,10 @@ class MobiFile(var book: Book) {
|
|
|
return field
|
|
return field
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
+ init {
|
|
|
|
|
+ upBookCover(true)
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
private fun readMobi(): MobiBook? {
|
|
private fun readMobi(): MobiBook? {
|
|
|
return kotlin.runCatching {
|
|
return kotlin.runCatching {
|
|
|
BookHelp.getBookPFD(book)?.let {
|
|
BookHelp.getBookPFD(book)?.let {
|
|
@@ -266,12 +271,15 @@ class MobiFile(var book: Book) {
|
|
|
return kf8Book.getResourceByHref(href)?.inputStream()
|
|
return kf8Book.getResourceByHref(href)?.inputStream()
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
- private fun upBookCover() {
|
|
|
|
|
|
|
+ private fun upBookCover(fastCheck: Boolean = false) {
|
|
|
try {
|
|
try {
|
|
|
mobiBook?.let {
|
|
mobiBook?.let {
|
|
|
if (book.coverUrl.isNullOrEmpty()) {
|
|
if (book.coverUrl.isNullOrEmpty()) {
|
|
|
book.coverUrl = LocalBook.getCoverPath(book)
|
|
book.coverUrl = LocalBook.getCoverPath(book)
|
|
|
}
|
|
}
|
|
|
|
|
+ if (fastCheck && File(book.coverUrl!!).exists()) {
|
|
|
|
|
+ return
|
|
|
|
|
+ }
|
|
|
it.getCover()?.let { bytes ->
|
|
it.getCover()?.let { bytes ->
|
|
|
val bitmap = BitmapFactory.decodeByteArray(bytes, 0, bytes.size)
|
|
val bitmap = BitmapFactory.decodeByteArray(bytes, 0, bytes.size)
|
|
|
val file = FileUtils.createFileIfNotExist(book.coverUrl!!)
|
|
val file = FileUtils.createFileIfNotExist(book.coverUrl!!)
|