
joywayerandClaude Opus 4.7
522087f398
修复下载进度瞬间跳 100%:换手动 downloadTask + 续作
async 版 await session.download(from:) 内部走 completion-handler 路径,
session 级 delegate 的 didWriteData 全部被跳过,结果只有兜底 onProgress(1.0)
在下载完成后才触发——用户看到的"瞬间 100%"就是这个唯一一次回调。
换成手动 session.downloadTask(with:).resume() + CheckedContinuation:
- didWriteData 正常按 URLSession 节奏在 opQueue 上派发,进度真实推进
- didFinishDownloadingTo 内同步把临时文件 move 到沙盒 Caches 的已知位置
(否则 delegate 返回后系统立即清掉那个临时位置)
- didCompleteWithError 里 resume 续作
- continuation/moveError 跨线程(actor → opQueue)用 NSLock 保护
LobbyZipUpgrader / SubGameDownloader 同款修复(大厅 zip 下载 + 子游戏 zip 下载)。
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-06-24 22:40:59 +08:00
..
2026-06-24 21:20:05 +08:00
2026-06-22 18:45:03 +08:00
2026-06-22 00:01:08 +08:00
2026-06-24 22:40:59 +08:00
2026-06-22 02:24:22 +08:00
2026-06-22 12:44:45 +08:00
2026-06-23 02:01:29 +08:00
2026-06-22 00:01:08 +08:00
2026-06-22 00:01:08 +08:00
2026-06-23 23:07:23 +08:00
2026-06-24 22:40:59 +08:00