Skip to content

v0.8.6

Choose a tag to compare

@xujunjiex xujunjiex released this 15 Jul 08:59

v0.8.6 更新内容

🐛 Bug 修复

  • 修复游戏/视频翻译退出时偶发 SIGSEGV 崩溃(Shooter use-after-free,quitSafely 后未 join 回调线程)
  • 修复引导页面"无障碍服务"页"继续"按钮点击无响应(缺少 setOnClickListener)
  • 修复个性化设置运行时修改部分开关不生效(漫画文字/背景颜色、AI 上下文开关/轮数未监听 prefs 变化)
  • 修复模型管理页面显示 bug

🔧 其他改动

  • 删除死代码:FloatingTextView.kt 整个文件、TranslationResultView.setLocked/isLockedView/onLockChangedIncremental_Render no-op listener
  • 统一 FloatingBallService 显示原文模式逻辑到 composeResultText()(之前双实现 DRY 违反)

v0.8.5 更新内容

🔧 其他改动

  • applicationId 改为 com.moe.starflow,支持与原项目共存安装
  • 修复 Gist 公告双文件不同步问题(删除过期 starflow-announcement.md)
  • CLAUDE.md 补充 BallStateManager 文档 + 藏球 delay(50) 说明

📋 后续更新计划

  • 后台批量漫画翻译和打包下载
  • 测试本地离线翻译功能
  • 添加更快、精度更高的 OCR 模型
  • 优化当前专用 OCR 模型的响应速度,替换使用最新版 PP-OCRv6 模型

v0.8.4 更新内容

✨ 新功能

  • 悬浮球状态图标系统(BallStateManager):Idle/Processing/Translating/Completed 四态切换 + Error 红圈脉冲动画
  • 游戏/漫画模式独立悬浮球图标定制

🐛 Bug 修复

  • 手动截图藏球后加 delay(50) 等 VD 刷新,避免悬浮球图标被截入翻译结果
  • 分批翻译 Translating 图标提前到第一批翻译开始时显示,避免一闪而过

🔧 其他改动

  • README 完全重写:专业结构、演示 GIF、功能详解
  • CLAUDE.md 补充 ML Kit OCR 内置 vs 翻译需下载说明

v0.8.3 更新内容

🐛 Bug 修复

  • 修复录屏超时后 imageAvailable 未重置导致持续超时的问题
  • 修复 ensureBufferOrientation 在 Service context 横屏下可能获取错误屏幕尺寸的问题
  • 移除 frameSeq 录屏死亡检测(框选模式下误报严重),自动翻译改用 40s pHash 超时兜底

🔧 其他改动

  • 错误代码页面迁移至各 API 配置页内显示
  • FAQ 合并 Q9→Q10,新增 Q11:录屏冲突症状及解决方案
  • README 添加演示 GIF 并优化内容结构

v0.8.2 修订(2026-07-05)

🐛 Bug 修复

  • 录屏横屏坐标对齐:Shooter 屏幕旋转后自动重建 ImageReader + resize VirtualDisplay,buffer 始终与屏幕方向对齐。修复横屏下框选底部却识别顶部文字的问题
  • ensureBufferOrientation 竞态闪退:关闭旧 ImageReader 前等待回调线程执行完毕,防止 native SIGSEGV
  • 自动翻译方向不匹配:startAutoTranslate 横屏时正确 return(原只弹 toast 不返回)
  • 屏幕旋转时自动清除旧框选区域并停止自动翻译

🔧 其他改动

  • MediaProjectionProvider / ScreenshotManager 移除冗余坐标变换逻辑
  • CLAUDE.md 更新

v0.8.2 更新内容

🐛 Bug 修复

  • 纯色/纯白页面精确检测:dHash 全零直接判断,防止假命中低纹理缓存页面
  • 历史记录 manga-ocr 重翻译修复:模型从下载目录加载(原错误从 assets 读取)
  • 历史记录原图/尺寸切换冲突修复:切换尺寸时清除原图覆盖
  • 历史记录重翻译破坏多尺寸分组修复:保留完整 256-bit 扩展哈希
  • 历史记录列表与浏览器分组不一致修复:统一为 256-bit 相似度算法
  • 历史记录重翻译 manga-ocr 引擎选择无效修复:改为 RT-DETR-V2 + MangaOcr
  • UI:按钮/下拉框黑色背景修复(亮度调整)
  • DB MIGRATION_10_11 幂等化:先 PRAGMA 检查列是否存在再操作

🔧 其他改动

  • 删除 PerceptualHash 中未使用的直方图/方差代码(quickSameCheck/isUniform 等)
  • DetectionBridge.runOCR 各分支统一添加模型选择日志
  • 纯色页面检测到后弹出 toast 提示"未检测到文字"

v0.8.1 更新内容

✨ 新功能

  • 256-bit 扩展感知哈希(17×16 dHash):漫画缓存匹配更精确,减少误命中
  • 截图时自动隐藏悬浮球:翻译截图不再包含球体,干净页面入缓存
  • 跨截图方式缓存匹配:MediaProjection 和无障碍截图可互相命中缓存

🐛 Bug 修复

  • pHash 历史记录显示完整 64 位哈希值
  • 修复无障碍干净截图拦截时机 bug
  • 漫画自动翻译重截图流程优化 + VirtualDisplay 死亡检测(frameSeq 不变则弹窗提示 + 关闭服务)
  • 防止 overlay 污染截图(进度条/球体被截入图导致 pHash 失真)

🔧 其他改动

  • 清理死代码 DAO 查询,简化 processMangaScreenshot Step3 分支
  • 更新 CLAUDE.md 缓存机制说明

v0.8.0 更新内容

✨ 新功能

  • 历史记录页面重构:双视图(默认视图 + 管理视图),统一卡片布局,四种显示模式
  • 管理视图引擎选择器:独立于悬浮窗配置
  • 管理视图:历史记录可直接重新翻译(独立 OCR→翻译→渲染→替换,不需要启动翻译服务)
  • 管理视图:进程组 ZIP 下载(SAF 文件选择器选保存位置)
  • 管理视图:多尺寸变体管理(切换、删除)
  • 详情页全屏浏览:原文/译文切换、变体切换、重翻/删除操作
  • 保存原始截图(originalImagePath),重翻时可用原图重新裁剪翻译
  • 双视图时间显示:卡片显示创建/修改时间,默认视图按修改排序,管理视图按创建排序

🐛 Bug 修复

  • Shooter DirectByteBuffer native crash 修复(copyPixelsFromBuffer 改用 heap byte[] 中转)
  • Dialog 主题崩溃修复(Material3 + AppCompat 不兼容改用 android.app.AlertDialog)
  • 引擎初始化只初始化 PP-OCR,漏了 CTD/RT-DETR/MangaOcr/MLKit
  • cropRect 枚举 ordinal vs value 混淆导致选 PP-OCR 却跑 RT-DETR,OCR 永远失败
  • OcrLock 未保护增量渲染路径,自动翻译和重翻同时跑会 native crash
  • 缓存去重永远不命中(findCacheByHashAndSize 查废弃的 cropWidth/cropHeight,新记录存 0)
  • 清除按钮误清两边历史记录
  • DB Migration 5→6/6→7/7→8 缺失导致降级用户数据丢失

⚡ 性能优化

  • 提取 TranslateUtils 公共翻译层,重翻和正常翻译共用同一套翻译管线
  • OcrLock 单例互斥锁,保护 ONNX 引擎单例并发调用
  • 统一卡片布局,净删 600+ 行冗余代码
  • 翻页闪屏优化(只通知旧页面清除 override,不触发新页 rebind)
  • 管理视图组内按 createdAt ASC 排序,顺序不随修改变化

🔧 其他改动

  • 所有弹窗改用自定义暗色(详情页)/ 浅色(历史主页)主题
  • UiUtils.showToast 替代系统 Toast,操作反馈统一
  • 下载改用 SAF ACTION_CREATE_DOCUMENT 文件选择器
  • CLAUDE.md UI 规范更新

下载说明