diff --git a/app/src/main/java/io/legado/app/data/entities/BookSource.kt b/app/src/main/java/io/legado/app/data/entities/BookSource.kt index 782eec76b..247dfc379 100644 --- a/app/src/main/java/io/legado/app/data/entities/BookSource.kt +++ b/app/src/main/java/io/legado/app/data/entities/BookSource.kt @@ -134,6 +134,13 @@ data class BookSource( return this } + fun hasGroup(group: String): Boolean { + bookSourceGroup?.splitNotBlank(AppPattern.splitGroupRegex)?.toHashSet()?.let { + return if (it.indexOf(group) != -1) true else false + } + return false + } + fun equal(source: BookSource) = equal(bookSourceName, source.bookSourceName) && equal(bookSourceUrl, source.bookSourceUrl) diff --git a/app/src/main/java/io/legado/app/service/CheckSourceService.kt b/app/src/main/java/io/legado/app/service/CheckSourceService.kt index 45c40a395..a7c057b43 100644 --- a/app/src/main/java/io/legado/app/service/CheckSourceService.kt +++ b/app/src/main/java/io/legado/app/service/CheckSourceService.kt @@ -121,8 +121,8 @@ class CheckSourceService : BaseService() { searchWord = it } } - //校验搜索 - if (CheckSource.checkSearch) { + //校验搜索 用户设置校验搜索 并且 搜索链接不为空 + if (CheckSource.checkSearch && !source.searchUrl.isNullOrBlank()) { books = WebBook.searchBookAwait(this, source, searchWord) if (books.isEmpty()) source.addGroup("搜索失效") else source.removeGroup("搜索失效") } @@ -187,7 +187,11 @@ class CheckSourceService : BaseService() { ?.filterNot { it.startsWith("Error: ") }?.joinToString("\n") - Debug.updateFinalMessage(source.bookSourceUrl, "成功") + if (source.hasGroup("搜索失效")) { + Debug.updateFinalMessage(source.bookSourceUrl, "失败") + } else { + Debug.updateFinalMessage(source.bookSourceUrl, "成功") + } }.onFinally(searchCoroutine) { source.respondTime = Debug.getRespondTime(source.bookSourceUrl) appDb.bookSourceDao.update(source)