Skip to content

NextVol 0.2.1

Latest

Choose a tag to compare

@github-actions github-actions released this 10 Nov 01:27
ce53f89

NextVol 0.2.1

0.2.1 集中修复图片加载和文件导入中的不合理限制,减少下载、听书及规则执行中的重复处理,并清理已经退出业务链路的旧实现。

版本特性

  • 正文图片加载修复:正文中的公网 CDN 图片可沿用宿主图片请求通道,加载失败时显示具体原因,便于判断网络、登录或图片格式问题。
  • 更顺畅的下载与翻页:离线图片下载跳过显示用解码,文件准备移出全局锁;手动翻页不再受单次会话 64 页上限影响。
  • 大文件导入与听书改进:TXT 按章节分块处理,取消 TXT/EPUB 的固定字节门槛;已成功获取的语音不再因累计音频大小被处理层拒绝。
  • 音色配置与代码清理:取消语言标记的固定格式限制和累计音色库存储门槛,清理旧筛选 UI、调试页及无调用代码。

Changelog

  • 图片与下载:修复正文 CDN 图片加载,统一原图识别,减少重复解码、逐字节 JSON 转换及写盘后的整文件回读。
  • 书源与正文:移除手动翻页的 64 页会话上限,复用规则执行负载,减少集合纯读后的重新包装及正文读取时无变化的目录写回。
  • 听书与音色:取消成功音频处理与拼接层的固定大小上限,接受服务实际使用的语言标记,移除音色库累计数量/字节门槛和整库导入复验。
  • 本地书:TXT 增量解码、章节落盘和按需预览,取消 TXT/EPUB 固定字节门槛;字数统计改用 Long,清理无文件指纹旧备份的重关联分支。
  • 维护:清理六类闲置实现及其专属测试、文案与资源,修正浏览器测试覆盖说明。
展开完整 Changelog(按主题归纳)

图片加载与离线下载

  • 正文中的普通公网 GET 图片请求使用宿主公网图片通道,覆盖书源正文引用其他 CDN 域名的情况;图片加载失败界面展示可识别的失败原因。
  • 统一原图格式识别,离线下载直接保存原始图片字节,跳过生成显示位图;保留书源绑定、请求版本和缓存策略。
  • 图片解码脚本不再受小文本字段门槛影响,改用专用字节传递,省去把每个字节转换成 JSON 数字的中间副本。
  • 图片文件准备和同步写盘移到全局锁外,提交时再核对下载任务与资源版本;使用同目录临时文件发布,取消写入后完整回读比较,减少对其他下载操作的阻塞。

相关 PR:#962、#965、#966、#967。

翻页、规则执行与正文状态

  • 手动翻页取消 64 页会话上限,继续沿用实际分页结束条件。
  • 规则执行复用已经编码的负载,关闭诊断时跳过无用的诊断字符串构造;进程隔离、取消与传输边界继续生效。
  • 脚本集合的纯读取不再触发全量重新包装,DOM 集合读取减少重复检查;修改操作仍更新对应状态。
  • 正文读取仅在目录刚加载、章节标题/状态或书籍状态发生变化时写回,未变化的目录直接复用。

相关 PR:#963、#964、#976、#977。

听书音频与音色配置

  • 已成功返回的音频不再在处理、分段累计和拼接层重复套用固定大小上限;流式播放继续逐块交付,WAV 拼接保留格式一致性检查。
  • 音色编辑不再要求语言标记必须是两段式或命中 ISO3 白名单,按用户或音源提供的值保存。
  • 音色库存储取消累计数量和 4 MiB 总量门槛,读取已保存音色时直接解析记录,省去把整库重新送入导入预览的重复校验;保存仍保留记录身份与资源引用的一致性。

相关 PR:#974、#975、#978。

TXT/EPUB 导入与本地书重关联

  • TXT 使用有限样本检测编码并增量解码,识别出的章节立即写入草稿;预览保留目录与统计,展开章节时读取对应正文,确认导入和重关联逐章消费准备好的文件。
  • 删除 TXT 的 16 MiB/64 MiB 总量门槛和总章节数门槛,自动检测与手动选择支持平台可用字符集,不再仅因控制字符拒绝整本书;保留单章分段,避免超长正文一次驻留内存。
  • EPUB 删除归档 64 MiB、单资源 16 MiB、累计解包读取 128 MiB 三层字节门槛,图片从 ZIP 分块写入草稿;路径、格式和 CRC 完整性检查继续保留。
  • 共享字数统计改用 Long,现有数据库文本存储格式保持兼容;重新解析会使旧预览失效,失败或取消时清理对应草稿。
  • 删除缺少文件指纹记录时按旧目录推断匹配的重关联功能及确认界面;当前格式备份仍可通过原文件重新关联并保留进度和书签。缺少记录的本地书可重新导入。

相关 PR:#979、#988。

死代码与维护清理

  • 删除未接入实际浏览器链路的旧策略/会话模型、旧 UA 生成器及专属测试,保留现行浏览器指纹、UA、Client Hints 和 Cookie 交接。
  • 删除旧筛选 UI、专属滑块弹窗、失去调用方的 RollingNumber,以及遗留展示辅助方法和带权重的监听器重载;保留实际筛选逻辑。
  • 删除无入口的 SQL 调试页和路由、未使用的标识序列化器、DAO/Repository 方法、工具及导航辅助方法,连同专属三语文案、图标和测试一起清理。
  • 浏览器覆盖说明区分隔离代理浏览器与原生网站浏览器,只引用实际生效的测试。

相关 PR:#986。

展开完整 PR 记录(15 项,含本次发布配置)

以下为 v0.2.0 之后纳入本版的 PR,按编号排列,包含本次发布配置。#988 先合入 #979 的分支,再随 #979 一并进入主线。

  • #962 [Fix][图片] 正文 CDN 图片复用宿主公网通道并展示失败原因
  • #963 [Fix][分页] 取消手动翻页的 64 页会话上限
  • #964 [Perf][规则执行] 复用已编码负载并省去诊断字符串构造
  • #965 [Perf][图片] 统一原图识别并跳过离线下载的显示解码
  • #966 [Perf][图片解码] 移除小文本门槛与逐字节 JSON 中转
  • #967 [Perf][下载存储] 图片准备移出全局锁并删除完整回读
  • #974 [Fix][TTS] 删除成功音频处理与拼接层的大小限制
  • #975 [Fix][音色编辑] 删除 locale 格式和 ISO3 白名单限制
  • #976 [Perf][规则执行] 删除集合纯读后的全量包装与重复 DOM 校验
  • #977 [Perf][正文读取] 跳过无状态变化的全目录复制与写回
  • #978 [Fix][音色存储] 删除累计音色库门槛与整库导入复验
  • #979 fix(localbook): TXT 分块导入并删除 TXT/EPUB 大小门槛
  • #986 [Chore][死代码] 清理六项闲置实现及专属测试资源
  • #988 [Refactor][本地书] 删除无文件指纹旧备份的重关联兼容
  • #990 chore(release): 发布 NextVol 0.2.1

下载与安装

下载 NextVol-0.2.1-release.apk,支持 Android 7.0 及以上。正式版沿用原包名和签名,可覆盖安装已有 NextVol 正式版,也可通过应用内正式更新渠道获取。SHA256SUMS 提供安装包校验值。

离线语音模型仍需自行导入,相关后端的设备与系统要求沿用 0.2.0。Debug、Snapshot 和上游 LightNovelReader 与正式版分别安装。

完整源码差异: v0.2.0...v0.2.1