From 397e103596d5ac7aa00193c8ce1e184315966ca1 Mon Sep 17 00:00:00 2001 From: fengge <844143714@qq.com> Date: Mon, 1 Jun 2026 18:07:35 +0800 Subject: [PATCH] =?UTF-8?q?bug=E4=BF=AE=E5=A4=8D:=20=E4=BF=AE=E5=A4=8Dexec?= =?UTF-8?q?uteJs=E9=94=81=E6=97=A0=E6=95=88=E5=AF=BC=E8=87=B4=E7=9A=84?= =?UTF-8?q?=E5=B9=B6=E5=8F=91=E5=9B=9E=E8=B0=83=E4=B8=A2=E5=A4=B1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/src/main/java/com/stand/standapp/MainActivity.kt | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/app/src/main/java/com/stand/standapp/MainActivity.kt b/app/src/main/java/com/stand/standapp/MainActivity.kt index b2f27ea..b240ff9 100644 --- a/app/src/main/java/com/stand/standapp/MainActivity.kt +++ b/app/src/main/java/com/stand/standapp/MainActivity.kt @@ -31,10 +31,12 @@ class MainActivity : AppCompatActivity() { @Volatile private var pendingJsCode: String? = null + private val jsLock = Any() + @JvmStatic fun executeJs(script: String) { Timber.tag("ExecuteJs").d(script) - synchronized(pendingJsCode ?: Any()) { + synchronized(jsLock) { // 合并多次调用(用换行分隔) pendingJsCode = if (pendingJsCode != null) "$pendingJsCode;$script" else script } @@ -119,7 +121,7 @@ class MainActivity : AppCompatActivity() { // 获取并清除待执行的 JS 代码(由 bridge.js 轮询) @JvmStatic fun pollPendingJs(): String { - synchronized(pendingJsCode ?: Any()) { + synchronized(jsLock) { val code = pendingJsCode ?: "" pendingJsCode = null return code