diff --git a/devdocs/05-开发进度与交接.md b/devdocs/05-开发进度与交接.md index 6aad94f..9072b8f 100644 --- a/devdocs/05-开发进度与交接.md +++ b/devdocs/05-开发进度与交接.md @@ -1893,3 +1893,23 @@ adb reverse --remove tcp:80 && adb reverse tcp:80 tcp:10942 4. **批 2(未开)**:订阅提到进程级(Activity 被划掉后收不到帧)。W54A 已合入,`AppContainer.kt` 的冲突面解除,可以开了。 5. **S4 回收对照组**(设备侧,随时可做,长跑已无基线可言)。 6. **推送**:主人继续研究,等他。 + +### 7. 保活长跑第 2 次的复查结果(**作废,不构成回归证据**) + +`22:13:39` 到点自动跑了那四条,原始输出: + +``` +1) 进程还在吗: (空) +2) 前台服务条数: 0 +3) 对端 WS 连接: 0 +4) 注入一条 proactive: delivered=0 +5) channel=proactive 的通知条数: 0 +``` + +**为什么作废(三条各自独立成立的原因,都不是功能回归)**: + +1. **我在长跑期间 `adb install -r` 装了新 APK** —— 装包**必然**杀 App 进程,这是已知事实(锚点三十三已写)。 +2. **`tcp:80` 现在指向真后端 `10942`**(切服务器时改的),App 已不在假后端 18090 的路径上 ⇒ 往 18090 注入 proactive 帧 `delivered=0`、`wsClients=0` 是**必然**,与客户端行为无关。 +3. 复查那一刻(及现在)App 进程**根本不在**(`pidof` 空、前台是 launcher、`KeepAliveService` 0 条)——**最可能的解释是保活开关当时没开**(没开 ⇒ 没有前台服务 ⇒ App 在后台待了几十分钟被系统正常回收,这正是「不保活」的预期)。⚠️ **这一条我没有实证**(App 已不在,读不到开关状态),**不要当结论**。 + +**要重做才有效**:得先把 `tcp:80` 切回假后端 `18090`(`adb reverse --remove tcp:80 && adb reverse tcp:80 tcp:18090`),再在真机/模拟器上开保活开关、建立新基线。⚠️ **但切回假后端会打断主人此刻在模拟器上用真后端看真实会话**,所以**没做,等主人定**。