From 5b67e414b3cc0abb1bb019a36612993792df042e Mon Sep 17 00:00:00 2001 From: joywayer Date: Mon, 22 Jun 2026 21:23:56 +0800 Subject: [PATCH] =?UTF-8?q?BackGameDataHandler=EF=BC=9A=E8=A1=A5=20SDK=20?= =?UTF-8?q?=E6=8E=A5=E5=85=A5=20TODO=20=E6=B8=85=E5=8D=95=EF=BC=88?= =?UTF-8?q?=E9=98=B2=E6=AD=A2=E6=9C=AA=E6=9D=A5=E6=BC=8F=E6=B8=85=E7=90=86?= =?UTF-8?q?=EF=BC=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 记录 Phase 4.E 微信 / Phase 5 定位 / Phase 3.B-D 录音上传 / Phase 8 Agora 真实接入时必须在此处补的对应清理钩子(msext 在 backgameData / cleanUpAction 里逐项清理;我们当前 stub 状态无需要清的状态,但落地任一 SDK 后必须回到此处补 1 行)。 Co-Authored-By: Claude Opus 4.7 --- .../Bridge/Handlers/BackGameDataHandler.swift | 21 +++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/ylgamehall/Source/Bridge/Handlers/BackGameDataHandler.swift b/ylgamehall/Source/Bridge/Handlers/BackGameDataHandler.swift index e0099f8..b87738d 100644 --- a/ylgamehall/Source/Bridge/Handlers/BackGameDataHandler.swift +++ b/ylgamehall/Source/Bridge/Handlers/BackGameDataHandler.swift @@ -16,6 +16,27 @@ // H5 大厅页若误调 backgameData 会落空(bridge 无对应 handler → JS 端的 callback 直接卡), // msext 同款行为 — 这是契约边界,不在原生侧兜底。 // +// ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ +// ⚠️ 接入新 SDK 时必须回到此处补对应清理钩子(msext 在 backgameData / cleanUpAction +// 里逐项清理;我们当前是 stub,所以暂无需要清的状态。一旦真实接入下列任一 SDK, +// 在 MainActor.run 块里加对应清理一行): +// +// - Phase 4.E 微信 SDK:`WXApi.delegate = nil` +// (msext gameController.m:699;防止 pop 后微信回调指向已销毁的 SubGameVC) +// +// - Phase 5 高德定位:`LocationService.shared.stop()` + delegate nil +// (msext gameController.m:2473-2478 cleanUpAction;防止后台定位继续耗电 + +// 回调指向悬空对象) +// +// - Phase 3.B/C/D 录音 / 七牛上传:`Recorder.shared.cancel()` + +// `Uploader.shared.cancelInFlight()` +// (msext 通过 ChatVoiceRecorderVC 生命周期间接清理;我们的实现不会跟 VC 绑死, +// 必须显式 cancel 否则上传任务在 pop 后继续写网络) +// +// - Phase 8 Agora(若未来重启视频):`agoraKit.leaveChannel(...)` +// (目前 VideoRoomHandlers 是 stub 无需清理) +// ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ +// import Foundation