Files
ReadViewSDK/Sources/RDEpubReaderView
shenlei 3e60bf1869 修复阅读器资源、朗读与持久化稳定性
阅读器在多会话朗读、加密 EPUB 资源、并发打开同一本书和多 UserDefaults 容器等场景下,存在旧异步结果覆盖新状态、锁屏控制串会话、大型明文资源被误拒绝、解压半成品被复用及标注跨容器混用的风险;同时高亮、书签、搜索和设置面板的空状态与自动化可访问性入口不完整。\n\n本次为朗读会话引入代次和当前 utterance 校验,远程控制改为仅响应当前会话并按自身 token 清理;加密资源 provider 先判定是否实际返回解密数据,明文大资源继续流式读取;解压缓存串行化以避免并发复用未完成目录。书签与高亮迁移至受保护文件,按 UserDefaults 容器隔离命名空间,保留标准容器旧文件兼容并确保新副本成功落盘后才删除历史数据。\n\n同步调整缓存淘汰、FoundationModels 弱链接、搜索/标注/设置面板交互与 UI 测试,并更新 Pod 生成配置及 API、风险文档。已执行 git diff --check 和 ReadViewDemo Debug Simulator 构建,结果为 BUILD SUCCEEDED。
2026-07-30 20:52:21 +09:00
..
2026-07-27 21:43:13 +08:00

RDEpubReaderView

项目内置的 EPUB、TXT、MOBI 与 CBZ 阅读器 CocoaPods 源码。

统一使用 RDEpubURLReaderController(bookURL:) 打开文件,支持扩展名:

  • epub:完整 EPUB 解析与排版
  • txt:纯文本章节识别与排版
  • mobi:无 DRM 的经典 MOBI6/PalmDOC(未压缩或 PalmDOC 压缩)
  • cbz:ZIP 漫画图片包,文件名自然排序、图片分页与阅读进度保存

MOBI 的 HUFF/CDIC 压缩、KF8 专有排版以及 DRM 内容会返回明确的不支持错误;CBZ 会限制页数和解压体积,避免异常压缩包耗尽设备资源。

Podfile 通过 :path => 'Vendor/RDEpubReaderView' 引用本目录;自动复制工程到其他目录打包时,不再依赖仓库外的 ReadViewSDK 路径。

更新 SDK 时请同步更新本目录中的 Sources/RDEpubReaderView.podspec,然后执行:

pod install --no-repo-update