From 6dc6a45361fc9951aa9c54998eeb689fc8896fde Mon Sep 17 00:00:00 2001 From: gedoor Date: Fri, 7 Jan 2022 00:09:01 +0800 Subject: [PATCH 1/5] =?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/ui/book/read/SearchMenu.kt | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/app/src/main/java/io/legado/app/ui/book/read/SearchMenu.kt b/app/src/main/java/io/legado/app/ui/book/read/SearchMenu.kt index 3e6a444d0..74712ea65 100644 --- a/app/src/main/java/io/legado/app/ui/book/read/SearchMenu.kt +++ b/app/src/main/java/io/legado/app/ui/book/read/SearchMenu.kt @@ -40,8 +40,8 @@ class SearchMenu @JvmOverloads constructor( private var onMenuOutEnd: (() -> Unit)? = null private val searchResultList: MutableList = mutableListOf() - private var currentSearchResultIndex: Int = 0 - private var lastSearchResultIndex: Int = 0 + private var currentSearchResultIndex: Int = -1 + private var lastSearchResultIndex: Int = -1 private val hasSearchResult: Boolean get() = searchResultList.isNotEmpty() val selectedSearchResult: SearchResult? From 586b1573286b52319eac2239047c6cf758caa419 Mon Sep 17 00:00:00 2001 From: Xwite <1797350009@qq.com> Date: Fri, 7 Jan 2022 09:35:39 +0800 Subject: [PATCH 2/5] =?UTF-8?q?cacheFile:=E9=A6=96=E6=AC=A1=E4=B8=8B?= =?UTF-8?q?=E6=B2=A1=E6=9C=89=E8=BF=94=E5=9B=9E=E4=B8=8B=E8=BD=BD=E5=86=85?= =?UTF-8?q?=E5=AE=B9;=E6=AD=A3=E7=A1=AE=E5=A4=84=E7=90=86saveTime=3D0?= =?UTF-8?q?=E7=9A=84=E6=83=85=E5=86=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/java/io/legado/app/help/CacheManager.kt | 11 +++++++++++ .../main/java/io/legado/app/help/JsExtensions.kt | 15 +++++++-------- 2 files changed, 18 insertions(+), 8 deletions(-) diff --git a/app/src/main/java/io/legado/app/help/CacheManager.kt b/app/src/main/java/io/legado/app/help/CacheManager.kt index 60627ee35..cc1ce71f1 100644 --- a/app/src/main/java/io/legado/app/help/CacheManager.kt +++ b/app/src/main/java/io/legado/app/help/CacheManager.kt @@ -28,6 +28,13 @@ object CacheManager { } } + fun putString2File(key: String, value: String, saveTime: Int = 0) { + if (saveTime == 0) { + //不设置过期时间 + ACache.get(appCtx).put(key, value) + } else ACache.get(appCtx).put(key, value, saveTime) + } + fun get(key: String): String? { return appDb.cacheDao.get(key, System.currentTimeMillis()) } @@ -52,6 +59,10 @@ object CacheManager { return ACache.get(appCtx).getAsBinary(key) } + fun getString(key: String): String? { + return ACache.get(appCtx).getAsString(key) + } + fun getQueryTTF(key: String): QueryTTF? { val cache = queryTTFMap[key] ?: return null if (cache.first == 0L || cache.first > System.currentTimeMillis()) { 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 adde0e962..69a21ae79 100644 --- a/app/src/main/java/io/legado/app/help/JsExtensions.kt +++ b/app/src/main/java/io/legado/app/help/JsExtensions.kt @@ -138,15 +138,14 @@ interface JsExtensions { * @param saveTime 缓存时间,单位:秒 * @return 返回缓存后的文件内容 */ - fun cacheFile(url: String, saveTime: Int = 0): String? { - val key = md5Encode16(url) - val cache = ACache.get(appCtx).getAsString(key) + fun cacheFile(urlStr: String, saveTime: Int = 0): String? { + val key = md5Encode16(urlStr) + val cache = CacheManager.getString(key) if(cache.isNullOrBlank()) { - log("首次下载${url}...") - val value = ajax(url) ?: "" - if (saveTime == 0) { - ACache.get(appCtx).put(key, value) - } else ACache.get(appCtx).put(key, value, saveTime) + log("首次下载 ${urlStr}") + val value = ajax(urlStr) ?: return null + CacheManager.putString2File(key, value, saveTime) + return value } return cache } From 8211f73b4300898aba915d0205c3f76f2a1ab07e Mon Sep 17 00:00:00 2001 From: Xwite <1797350009@qq.com> Date: Fri, 7 Jan 2022 10:13:20 +0800 Subject: [PATCH 3/5] =?UTF-8?q?cacheFile:=E9=A6=96=E6=AC=A1=E4=B8=8B?= =?UTF-8?q?=E6=B2=A1=E6=9C=89=E8=BF=94=E5=9B=9E=E4=B8=8B=E8=BD=BD=E5=86=85?= =?UTF-8?q?=E5=AE=B9;ACache:saveTime=3D0=E8=A7=86=E4=B8=BA=E6=B0=B8?= =?UTF-8?q?=E4=B9=85=E4=BF=9D=E5=AD=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/src/main/java/io/legado/app/help/CacheManager.kt | 5 +---- app/src/main/java/io/legado/app/utils/ACache.kt | 4 ++-- 2 files changed, 3 insertions(+), 6 deletions(-) diff --git a/app/src/main/java/io/legado/app/help/CacheManager.kt b/app/src/main/java/io/legado/app/help/CacheManager.kt index cc1ce71f1..3b5d89bdb 100644 --- a/app/src/main/java/io/legado/app/help/CacheManager.kt +++ b/app/src/main/java/io/legado/app/help/CacheManager.kt @@ -29,10 +29,7 @@ object CacheManager { } fun putString2File(key: String, value: String, saveTime: Int = 0) { - if (saveTime == 0) { - //不设置过期时间 - ACache.get(appCtx).put(key, value) - } else ACache.get(appCtx).put(key, value, saveTime) + ACache.get(appCtx).put(key, value, saveTime) } fun get(key: String): String? { diff --git a/app/src/main/java/io/legado/app/utils/ACache.kt b/app/src/main/java/io/legado/app/utils/ACache.kt index 11b448aa6..b900095c3 100644 --- a/app/src/main/java/io/legado/app/utils/ACache.kt +++ b/app/src/main/java/io/legado/app/utils/ACache.kt @@ -109,7 +109,7 @@ class ACache private constructor(cacheDir: File, max_size: Long, max_count: Int) * @param saveTime 保存的时间,单位:秒 */ fun put(key: String, value: String, saveTime: Int) { - put(key, Utils.newStringWithDateInfo(saveTime, value)) + if (saveTime == 0) put(key, value) else put(key, Utils.newStringWithDateInfo(saveTime, value)) } /** @@ -245,7 +245,7 @@ class ACache private constructor(cacheDir: File, max_size: Long, max_count: Int) * @param saveTime 保存的时间,单位:秒 */ fun put(key: String, value: ByteArray, saveTime: Int) { - put(key, Utils.newByteArrayWithDateInfo(saveTime, value)) + if (saveTime == 0) put(key, value) else put(key, Utils.newByteArrayWithDateInfo(saveTime, value)) } /** From 100218060efe8a293c5f176d996ef94e42071154 Mon Sep 17 00:00:00 2001 From: gedoor Date: Fri, 7 Jan 2022 10:46:48 +0800 Subject: [PATCH 4/5] =?UTF-8?q?=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/java/io/legado/app/utils/UTF8BOMFighter.kt | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/app/src/main/java/io/legado/app/utils/UTF8BOMFighter.kt b/app/src/main/java/io/legado/app/utils/UTF8BOMFighter.kt index 3f502f8b6..bf55d780e 100644 --- a/app/src/main/java/io/legado/app/utils/UTF8BOMFighter.kt +++ b/app/src/main/java/io/legado/app/utils/UTF8BOMFighter.kt @@ -18,9 +18,9 @@ object UTF8BOMFighter { fun removeUTF8BOM(bytes: ByteArray): ByteArray { val containsBOM = (bytes.size > 3 - && bytes[0] == UTF8_BOM_BYTES[0] - && bytes[1] == UTF8_BOM_BYTES[1] - && bytes[2] == UTF8_BOM_BYTES[2]) + && bytes[0] == UTF8_BOM_BYTES[0] + && bytes[1] == UTF8_BOM_BYTES[1] + && bytes[2] == UTF8_BOM_BYTES[2]) if (containsBOM) { val copy = ByteArray(bytes.size - 3) System.arraycopy(bytes, 3, copy, 0, bytes.size - 3) @@ -28,4 +28,11 @@ object UTF8BOMFighter { } return bytes } + + fun hasBom(bytes: ByteArray): Boolean { + return (bytes.size > 3 + && bytes[0] == UTF8_BOM_BYTES[0] + && bytes[1] == UTF8_BOM_BYTES[1] + && bytes[2] == UTF8_BOM_BYTES[2]) + } } \ No newline at end of file From 9a31c920d4046c8f5c138c4e799a815b7fed2ed9 Mon Sep 17 00:00:00 2001 From: kunfei Date: Fri, 7 Jan 2022 11:03:46 +0800 Subject: [PATCH 5/5] Update test.yml --- .github/workflows/test.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index c7738b502..7b0a5cd1a 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -134,7 +134,7 @@ jobs: git checkout -b test git add *.apk git commit -m "${{ needs.prepare.outputs.versionL }}" - git remote add origin "https://${{ github.actor }}:${{ secrets.GITHUB_TOKEN }}@github.com/${{ github.actor }}/release" + git remote add origin "https://${{ github.actor }}:${{ secrets.ACTIONS_TOKEN }}@github.com/${{ github.actor }}/release" git push -f -u origin test telegram: