This commit is contained in:
Horis 2023-12-18 18:21:52 +08:00
parent d8023474ed
commit 03af785add

View File

@ -18,7 +18,6 @@ import io.legado.app.ui.book.cache.CacheActivity
import io.legado.app.utils.activityPendingIntent
import io.legado.app.utils.postEvent
import io.legado.app.utils.servicePendingIntent
import io.legado.app.utils.toastOnUi
import kotlinx.coroutines.Job
import kotlinx.coroutines.asCoroutineDispatcher
import kotlinx.coroutines.delay
@ -106,10 +105,19 @@ class CacheBookService : BaseService() {
val chapterCount = appDb.bookChapterDao.getChapterCount(bookUrl)
if (chapterCount == 0) {
val name = cacheBook.book.name
if (cacheBook.book.tocUrl.isEmpty()) {
kotlin.runCatching {
WebBook.getBookInfoAwait(cacheBook.bookSource, cacheBook.book)
}.onFailure {
val msg = "$name》目录为空且加载详情页失败\n${it.localizedMessage}"
AppLog.put(msg, it, true)
return@execute
}
}
WebBook.getChapterListAwait(cacheBook.bookSource, cacheBook.book).onFailure {
cacheBook.book.totalChapterNum = 0
AppLog.put("$name》目录为空且加载目录失败\n${it.localizedMessage}", it)
appCtx.toastOnUi("$name》目录为空且加载目录失败\n${it.localizedMessage}")
AppLog.put("$name》目录为空且加载目录失败\n${it.localizedMessage}", it, true)
return@execute
}.getOrNull()?.let { toc ->
appDb.bookChapterDao.insert(*toc.toTypedArray())
}