Appearance
本地格式
| 格式 | 扩展名 | 当前处理 |
|---|---|---|
| EPUB | .epub | ZIPFoundation 解包、OPF/导航、HTML/CSS、图片资源 |
| TXT | .txt | 编码检测、章节正则、纯文本清洗 |
| MOBI | .mobi/.azw/.azw3/.prc | PalmDOC/MOBI6 解析,有限 KF8 兼容 |
| CBZ | .cbz | ZIP 图片页排序、封面和漫画阅读 |
格式识别集中在 LocalBookFormat,文件选择器、书架导入和阅读器共用同一映射。
文件存储
导入文件复制到应用 Documents 的受控目录。保存路径失效时按文件名回退查找,处理 iOS 容器 UUID 改变:先尝试原始保存路径,不存在时回退到 Documents/LocalBooks/<文件名>, 两条本地导入入口(书架内“文件”导入、书籍详情“文件”导入)和阅读器解析共用同一份回退 逻辑,不会出现“这个入口能找到文件、那个入口找不到”的不一致。临时解压目录和图片缓存可 重建,不作为唯一书籍数据源。
不支持或有限支持
- 加密 EPUB/MOBI;
- 只有 KF8、没有 MOBI6 fallback 的复杂 AZW3;
- DRM;
- 任意脚本化 EPUB;
- 损坏 ZIP、超大图片或异常压缩包。
解析失败应显示具体格式错误,不能把二进制容器当 TXT 乱码展示。
