From da77e672862c0a0c9063f57e6664270090c13b6f Mon Sep 17 00:00:00 2001 From: HapeLee <63206378+HapeLee@users.noreply.github.com> Date: Sun, 17 May 2026 20:17:32 +0800 Subject: [PATCH] =?UTF-8?q?=E4=B8=80=E4=BA=9B=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/src/main/java/io/legado/app/data/entities/Book.kt | 10 ++++++++++ .../java/io/legado/app/data/entities/SearchBook.kt | 6 ++++++ .../main/java/io/legado/app/model/webBook/BookInfo.kt | 3 ++- .../main/java/io/legado/app/model/webBook/BookList.kt | 4 ++-- 4 files changed, 20 insertions(+), 3 deletions(-) diff --git a/app/src/main/java/io/legado/app/data/entities/Book.kt b/app/src/main/java/io/legado/app/data/entities/Book.kt index 0da6dc54b..3ed364a07 100644 --- a/app/src/main/java/io/legado/app/data/entities/Book.kt +++ b/app/src/main/java/io/legado/app/data/entities/Book.kt @@ -124,6 +124,16 @@ data class Book( var syncTime: Long = 0L ) : Parcelable, BaseBook { + init { + kind = kind?.take(1000) + intro = intro?.take(5000) + customTag = customTag?.take(1000) + customIntro = customIntro?.take(5000) + remark = remark?.take(1000) + latestChapterTitle = latestChapterTitle?.take(200) + durChapterTitle = durChapterTitle?.take(200) + } + @delegate:Transient @delegate:Ignore @IgnoredOnParcel diff --git a/app/src/main/java/io/legado/app/data/entities/SearchBook.kt b/app/src/main/java/io/legado/app/data/entities/SearchBook.kt index 2b327b6d7..449f4eb4b 100644 --- a/app/src/main/java/io/legado/app/data/entities/SearchBook.kt +++ b/app/src/main/java/io/legado/app/data/entities/SearchBook.kt @@ -54,6 +54,12 @@ data class SearchBook( var respondTime: Int = -1 ) : Parcelable, BaseBook, Comparable { + init { + kind = kind?.take(1000) + intro = intro?.take(5000) + latestChapterTitle = latestChapterTitle?.take(200) + } + @Ignore @IgnoredOnParcel override var infoHtml: String? = null diff --git a/app/src/main/java/io/legado/app/model/webBook/BookInfo.kt b/app/src/main/java/io/legado/app/model/webBook/BookInfo.kt index f90d5fab0..66c96adc0 100644 --- a/app/src/main/java/io/legado/app/model/webBook/BookInfo.kt +++ b/app/src/main/java/io/legado/app/model/webBook/BookInfo.kt @@ -84,6 +84,7 @@ object BookInfo { try { analyzeRule.getStringList(infoRule.kind) ?.joinToString(",") + ?.take(1000) ?.let { if (it.isNotEmpty()) book.kind = it Debug.log(bookSource.bookSourceUrl, "└${it}") @@ -120,7 +121,7 @@ object BookInfo { coroutineContext.ensureActive() Debug.log(bookSource.bookSourceUrl, "┌获取简介") try { - HtmlFormatter.format(analyzeRule.getString(infoRule.intro)).let { + HtmlFormatter.format(analyzeRule.getString(infoRule.intro)).take(5000).let { if (it.isNotEmpty()) book.intro = it Debug.log(bookSource.bookSourceUrl, "└${it}") } 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 10898874f..ecc036d93 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 @@ -230,7 +230,7 @@ object BookList { coroutineContext.ensureActive() Debug.log(bookSource.bookSourceUrl, "┌获取分类", log) try { - searchBook.kind = analyzeRule.getStringList(ruleKind)?.joinToString(",") + searchBook.kind = analyzeRule.getStringList(ruleKind)?.joinToString(",")?.take(1000) Debug.log(bookSource.bookSourceUrl, "└${searchBook.kind ?: ""}", log) } catch (e: Exception) { coroutineContext.ensureActive() @@ -257,7 +257,7 @@ object BookList { coroutineContext.ensureActive() Debug.log(bookSource.bookSourceUrl, "┌获取简介", log) try { - searchBook.intro = HtmlFormatter.format(analyzeRule.getString(ruleIntro)) + searchBook.intro = HtmlFormatter.format(analyzeRule.getString(ruleIntro)).take(5000) Debug.log(bookSource.bookSourceUrl, "└${searchBook.intro}", log) } catch (e: Exception) { coroutineContext.ensureActive()