diff --git a/app/src/main/java/io/legado/app/model/webBook/BookList.kt b/app/src/main/java/io/legado/app/model/webBook/BookList.kt index ee2760864..157ddcff0 100644 --- a/app/src/main/java/io/legado/app/model/webBook/BookList.kt +++ b/app/src/main/java/io/legado/app/model/webBook/BookList.kt @@ -118,6 +118,9 @@ object BookList { bookList.add(searchBook) } } + val lh = LinkedHashSet(bookList) + bookList.clear() + bookList.addAll(lh) if (reverse) { bookList.reverse() } diff --git a/app/src/main/java/io/legado/app/ui/book/audio/AudioPlayViewModel.kt b/app/src/main/java/io/legado/app/ui/book/audio/AudioPlayViewModel.kt index cb6a05068..6a613cfd9 100644 --- a/app/src/main/java/io/legado/app/ui/book/audio/AudioPlayViewModel.kt +++ b/app/src/main/java/io/legado/app/ui/book/audio/AudioPlayViewModel.kt @@ -61,6 +61,7 @@ class AudioPlayViewModel(application: Application) : BaseViewModel(application) AudioPlay.bookSource?.let { WebBook.getChapterList(this, it, book) .onSuccess(Dispatchers.IO) { cList -> + book.save() appDb.bookChapterDao.insert(*cList.toTypedArray()) AudioPlay.upDurChapter(book) }.onError { diff --git a/app/src/main/java/io/legado/app/ui/book/info/BookInfoViewModel.kt b/app/src/main/java/io/legado/app/ui/book/info/BookInfoViewModel.kt index db1617868..7a60235e8 100644 --- a/app/src/main/java/io/legado/app/ui/book/info/BookInfoViewModel.kt +++ b/app/src/main/java/io/legado/app/ui/book/info/BookInfoViewModel.kt @@ -53,11 +53,7 @@ class BookInfoViewModel(application: Application) : BaseViewModel(application) { } if (bookUrl.isNotBlank()) { appDb.searchBookDao.getSearchBook(bookUrl)?.toBook()?.let { - if (it.name == name && it.author == author) { - upBook(it) - } else { - throw NoStackTraceException("未找到书籍,请删除此书源后重新搜索:${it.originName}") - } + upBook(it) return@execute } }