IOS-INFO-006:ReadingRuntimeSessionManager #114

Open
opened 2026-06-10 21:28:09 +08:00 by wangdl · 0 comments
Owner

目标

实现 iOS 侧阅读会话管理器,统一管理当前阅读资料的 session 生命周期、Runtime Adapter、Heartbeat、position、close。

职责

  • open session
  • hold current session
  • prevent duplicate open
  • record position
  • heartbeat
  • pause / resume
  • close session
  • flush events
  • handle errors

状态建议

  • idle
  • opening
  • active
  • paused
  • closing
  • closed
  • failed

异常 session 恢复

SessionManager 必须支持异常 session 恢复场景:

  1. App crash 后重新启动,不复用旧 active session。
  2. Runtime buffer 存在 stale events 时,等待启动恢复流程处理。
  3. 未 close session 应标记 interrupted 或安全废弃。
  4. closeSession 必须幂等。
  5. openSession 前必须确认当前没有 active session,或先处理旧 session。

验收标准

  1. 可打开 session。
  2. 同一 context 不重复打开。
  3. 可记录当前 sessionId。
  4. 可 close 当前 session。
  5. close 幂等。
  6. 支持 pause / resume。
  7. Runtime error 不导致页面崩溃。
  8. 有状态机测试。
## 目标 实现 iOS 侧阅读会话管理器,统一管理当前阅读资料的 session 生命周期、Runtime Adapter、Heartbeat、position、close。 ## 职责 - open session - hold current session - prevent duplicate open - record position - heartbeat - pause / resume - close session - flush events - handle errors ## 状态建议 - idle - opening - active - paused - closing - closed - failed ## 异常 session 恢复 SessionManager 必须支持异常 session 恢复场景: 1. App crash 后重新启动,不复用旧 active session。 2. Runtime buffer 存在 stale events 时,等待启动恢复流程处理。 3. 未 close session 应标记 interrupted 或安全废弃。 4. closeSession 必须幂等。 5. openSession 前必须确认当前没有 active session,或先处理旧 session。 ## 验收标准 1. 可打开 session。 2. 同一 context 不重复打开。 3. 可记录当前 sessionId。 4. 可 close 当前 session。 5. close 幂等。 6. 支持 pause / resume。 7. Runtime error 不导致页面崩溃。 8. 有状态机测试。
wangdl added this to the M-IOS-INFO:学习信息采集、上传、继续学习与基础分析闭环 milestone 2026-06-10 21:28:09 +08:00
wangdl added the
blocked-by:doc-runtime
label 2026-06-10 22:15:57 +08:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: wangdl/ios-projects#114
No description provided.