From 99582dfcd70e2f8c9da4d51bd249a83e4677f284 Mon Sep 17 00:00:00 2001 From: Xwite <1797350009@qq.com> Date: Sat, 25 Mar 2023 11:53:10 +0800 Subject: [PATCH] =?UTF-8?q?=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/help/JsExtensions.kt | 4 ++-- .../io/legado/app/ui/association/FileAssociationViewModel.kt | 4 +++- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/app/src/main/java/io/legado/app/help/JsExtensions.kt b/app/src/main/java/io/legado/app/help/JsExtensions.kt index 87c01ef57..7ac1261e9 100644 --- a/app/src/main/java/io/legado/app/help/JsExtensions.kt +++ b/app/src/main/java/io/legado/app/help/JsExtensions.kt @@ -173,7 +173,7 @@ interface JsExtensions : JsEncodeUtils { */ fun importScript(path: String): String { val result = when { - path.startsWith("http") -> cacheFile(path) ?: "" + path.startsWith("http") -> cacheFile(path) path.isUri() -> Uri.parse(path).readText(appCtx) path.startsWith("/storage") -> FileUtils.readText(path) else -> readTxtFile(path) @@ -187,7 +187,7 @@ interface JsExtensions : JsEncodeUtils { * @param urlStr 网络文件的链接 * @return 返回缓存后的文件内容 */ - fun cacheFile(urlStr: String): String? { + fun cacheFile(urlStr: String): String { return cacheFile(urlStr, 0) } diff --git a/app/src/main/java/io/legado/app/ui/association/FileAssociationViewModel.kt b/app/src/main/java/io/legado/app/ui/association/FileAssociationViewModel.kt index dc3a9b7f3..e9b3c47a2 100644 --- a/app/src/main/java/io/legado/app/ui/association/FileAssociationViewModel.kt +++ b/app/src/main/java/io/legado/app/ui/association/FileAssociationViewModel.kt @@ -24,7 +24,9 @@ class FileAssociationViewModel(application: Application) : BaseAssociationViewMo val fileDoc = FileDoc.fromUri(uri, false) fileName = fileDoc.name if (fileName.matches(AppPattern.archiveFileRegex)) { - ArchiveUtils.deCompress(fileDoc).forEach { + ArchiveUtils.deCompress(fileDoc, ArchiveUtils.TEMP_PATH) { + it.matches(bookFileRegex) + }.forEach { dispatch(FileDoc.fromFile(it)) } } else {