diff --git a/PDA/PDA/src/libs/Broadcast.js b/PDA/PDA/src/libs/Broadcast.js index a6dd65d..270972f 100644 --- a/PDA/PDA/src/libs/Broadcast.js +++ b/PDA/PDA/src/libs/Broadcast.js @@ -3,6 +3,16 @@ var receiver = null; //接收广播 export function recive(success, fail) { + //在所有页面注册监听前 如果当前应用存在监听 则取消广播监听 + if (main && receiver) { + console.log("取消监听广播"); + try { + main.unregisterReceiver(receiver); + } catch (e) { + console.error("取消广播监听时出错:", e); + } + } + // #ifdef APP main = plus.android.runtimeMainActivity(); //获取activity //创建自定义广播实例 diff --git a/PDA/PDA/static/锡膏预约.png b/PDA/PDA/static/锡膏预约.png deleted file mode 100644 index 45ff61d..0000000 Binary files a/PDA/PDA/static/锡膏预约.png and /dev/null differ diff --git a/PDA/PDA/unpackage/dist/dev/app-plus/app-service.js b/PDA/PDA/unpackage/dist/dev/app-plus/app-service.js index 534b639..3b21ba0 100644 --- a/PDA/PDA/unpackage/dist/dev/app-plus/app-service.js +++ b/PDA/PDA/unpackage/dist/dev/app-plus/app-service.js @@ -44,12 +44,20 @@ if (uni.restoreGlobal) { var main = null; var receiver = null; function recive(success, fail) { + if (main && receiver) { + formatAppLog("log", "at src/libs/Broadcast.js:8", "取消监听广播"); + try { + main.unregisterReceiver(receiver); + } catch (e) { + formatAppLog("error", "at src/libs/Broadcast.js:12", "取消广播监听时出错:", e); + } + } main = plus.android.runtimeMainActivity(); receiver = plus.android.implements("io.dcloud.feature.internal.reflect.BroadcastReceiver", { onReceive: function(context, intent) { plus.android.importClass(intent); var action = intent.getAction(); - formatAppLog("log", "at src/libs/Broadcast.js:13", "zhanglp", action); + formatAppLog("log", "at src/libs/Broadcast.js:23", "zhanglp", action); var data; switch (action) { case "com.android.server.scannerservice.broadcast": @@ -57,7 +65,7 @@ if (uni.restoreGlobal) { break; case "com.service.scanner.data": data = intent.getExtra("ScanCode"); - formatAppLog("log", "at src/libs/Broadcast.js:21", "zhanglp", data.replace(/\n/, "")); + formatAppLog("log", "at src/libs/Broadcast.js:31", "zhanglp", data.replace(/\n/, "")); break; case "android.intent.action.SCANRESULT": data = intent.getExtra("value"); @@ -129,7 +137,7 @@ if (uni.restoreGlobal) { main.registerReceiver(receiver, filter); } function unregisterReceiver() { - formatAppLog("log", "at src/libs/Broadcast.js:114", "取消监听广播"); + formatAppLog("log", "at src/libs/Broadcast.js:124", "取消监听广播"); main.unregisterReceiver(receiver); } function saveConfig(key, value) { diff --git a/PDA/PDA/unpackage/dist/dev/app-plus/static/锡膏预约.png b/PDA/PDA/unpackage/dist/dev/app-plus/static/锡膏预约.png deleted file mode 100644 index 45ff61d..0000000 Binary files a/PDA/PDA/unpackage/dist/dev/app-plus/static/锡膏预约.png and /dev/null differ