From 2fbca2b6559807b9a0e36fefb96ed3f666e2eea9 Mon Sep 17 00:00:00 2001 From: Horis <821938089@qq.com> Date: Thu, 15 Jun 2023 17:15:09 +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/utils/MD5Utils.kt | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/app/src/main/java/io/legado/app/utils/MD5Utils.kt b/app/src/main/java/io/legado/app/utils/MD5Utils.kt index 3cf170cf8..261626aa8 100644 --- a/app/src/main/java/io/legado/app/utils/MD5Utils.kt +++ b/app/src/main/java/io/legado/app/utils/MD5Utils.kt @@ -1,7 +1,9 @@ package io.legado.app.utils import cn.hutool.crypto.digest.DigestUtil +import cn.hutool.crypto.digest.Digester import java.io.InputStream +import kotlin.concurrent.getOrSet /** * 将字符串转化为MD5 @@ -9,12 +11,19 @@ import java.io.InputStream @Suppress("unused") object MD5Utils { + private val threadLocal = ThreadLocal() + + private val MD5Digester + get() = threadLocal.getOrSet { + DigestUtil.digester("MD5") + } + fun md5Encode(str: String?): String { - return DigestUtil.digester("MD5").digestHex(str) + return MD5Digester.digestHex(str) } fun md5Encode(inputStream: InputStream): String { - return DigestUtil.digester("MD5").digestHex(inputStream) + return MD5Digester.digestHex(inputStream) } fun md5Encode16(str: String): String {