kunfei пре 4 година
родитељ
комит
1c74100a65
1 измењених фајлова са 11 додато и 1 уклоњено
  1. 11 1
      app/src/main/java/io/legado/app/api/controller/BookController.kt

+ 11 - 1
app/src/main/java/io/legado/app/api/controller/BookController.kt

@@ -21,6 +21,7 @@ import io.legado.app.model.localBook.LocalBook
 import io.legado.app.model.localBook.UmdFile
 import io.legado.app.model.localBook.UmdFile
 import io.legado.app.model.webBook.WebBook
 import io.legado.app.model.webBook.WebBook
 import io.legado.app.utils.*
 import io.legado.app.utils.*
+import kotlinx.coroutines.delay
 import kotlinx.coroutines.runBlocking
 import kotlinx.coroutines.runBlocking
 import splitties.init.appCtx
 import splitties.init.appCtx
 import java.io.File
 import java.io.File
@@ -131,7 +132,16 @@ object BookController {
             return returnData.setErrorMsg("参数index不能为空, 请指定目录序号")
             return returnData.setErrorMsg("参数index不能为空, 请指定目录序号")
         }
         }
         val book = appDb.bookDao.getBook(bookUrl)
         val book = appDb.bookDao.getBook(bookUrl)
-        val chapter = appDb.bookChapterDao.getChapter(bookUrl, index)
+        val chapter = runBlocking {
+            var chapter = appDb.bookChapterDao.getChapter(bookUrl, index)
+            var wait = 0
+            while (chapter == null && wait < 30) {
+                delay(1000)
+                chapter = appDb.bookChapterDao.getChapter(bookUrl, index)
+                wait++
+            }
+            chapter
+        }
         if (book == null || chapter == null) {
         if (book == null || chapter == null) {
             return returnData.setErrorMsg("未找到")
             return returnData.setErrorMsg("未找到")
         }
         }