Skip to content

v11.4

Choose a tag to compare

@github-actions github-actions released this 26 Oct 09:03
· 71 commits to main since this release
188920c

v11.4 摘要

导入重做 — 第一步从「手输路径」换成系统文件夹选择器(ACTION_OPEN_DOCUMENT_TREE + persistable 授权),授权跟目录走、不随卸载重装重置;所选目录先复制进应用私有暂存(带进度、失败清半成品、可用空间 <128MB 硬失败、6h 残骸清扫)再走原管线。

导入假成功链(真机事故 D1–D5) — 重装后「所有文件访问」被系统重置时 listFiles() 为 null,旧行为一路「成功」到启动才报「启动文件缺失」:现 step0 fail-fast 并带用户去授权页。同批修复:解压套娃目录归一(resolveGameRoot,JVM 回归 E15–E21)、库条目回填标题/引擎、CJK 目录名塌缩改附哈希后缀、容器名恒等 galgame-<gameId>(避让上移到 id 派生)、导入失败回滚已建容器、复制完成无 exe 当场告警、重复导入先确认。

游戏库分类 — 顶部 chips 单选过滤:引擎自动归类(多于一种才出现)、预置内容品类(视觉小说 / 文字冒险 / 其他)、自定义标签;长按多选后「品类 / 标签」可一次给多张卡归类,标签可内联新建。

数据安全三件 — ①「彻底删除」补删 files/galgame-native 收纳副本(此前数 GB 静默泄漏)并校验结果;②索引改 .tmp+fsync+rename 原子写,解析失败先隔离 .corrupt-<ts> 再重建;③存档管理器拒绝空 gameId(跨游戏串档),便携存档「先搬后链」改为合并不完整就不删源、链接失败把档拷回、同名冲突留 .bak。

运维事实(重要) — 卸载重装 / 清数据会重置全部文件权限(含「所有文件访问」),ColorOS/Android 16 上 shell 无法代授,只能用户手动开;新的导入流程不依赖该权限。

真机验收 — RMX5010 / Adreno 830 / Android 16,release 包 11.4:选择器全链路(Download → 游戏目录 → 使用此文件夹)→ 检测 UNITY / 5 个文件 → 导入 → 单卡启动 → 标题菜单 → 正片连续推进对白 100s+;分类三条链路(品类/标签/引擎 chips,筛选取值 1/1/2);把索引写成非法 JSON 后改一次分类 → 旧文件留档、新索引字段正确;注入 2MB 收纳副本后彻底删除 → 目录归空。

已知限制 — 走 DirectShow 的引擎(SystemNNN / YU-RIS 等)过场动画仍黑屏(TD-09,Wine 侧 quartz 死锁);AdvHD 仍未可玩(TD-17);本次新登记 TD-25(显示标题只存在索引里,索引损坏后退化成 ASCII gameId)。

逐条变更见 CHANGELOG.md。下面的自动生成列表只覆盖经 PR 合并的条目。


What's Changed

  • docs: 新增真机验证报告(2026-10-22~10-24 三轮汇总) by @ReSerendipity in #23
  • test(docs): 逐游戏实际游玩验证 —— 17 个样本、8 个可玩 by @ReSerendipity in #24
  • fix(launch): 桌面模式补 DOS 路径;记录虚拟桌面路线不可用 by @ReSerendipity in #25
  • docs: 两项绕过实验——YU-RIS 片头不可跳过、KiriKiri 走容器可行 by @ReSerendipity in #26
  • feat(launch): 原生引擎可一键改用 Wine 容器运行 by @ReSerendipity in #27
  • fix(detail): 转换后本页能自己找回容器与运行方式 by @ReSerendipity in #28
  • docs: 完整流程验证通过,记录「分辨率大于容器屏幕」陷阱 by @ReSerendipity in #29
  • feat(detail): 运行环境分辨率可调(1280x720 / 1600x900 / 1920x1080) by @ReSerendipity in #30
  • docs(td12): 三项已排除 + 更正「窗口被裁切」模型 by @ReSerendipity in #31
  • feat(engine): preset KiriKiri virtual screen to 1920x1080 (TD-14) by @ReSerendipity in #34
  • chore(governance): finish AGENTS migration, README and doc hygiene by @ReSerendipity in #35
  • fix(galgame): Wine 路线窗口画面铺满(画面只占一小块的全屏修复) by @ReSerendipity in #36
  • fix(services): 通知落地页统一到游戏库 + 全屏修复复盘文档 by @ReSerendipity in #37
  • docs(governance): 项目身份重构——独立项目 + 内嵌 Winlator 组件(决策 A8) by @ReSerendipity in #38
  • docs(readme): bilingual showcase with real screenshots by @ReSerendipity in #39
  • feat(galgame): 启动链自愈(AdvHD icu 桩 / BGI ASCII 别名 / S: 目录)+ 对话框自动应答(教学-回放) by @ReSerendipity in #40
  • docs(readme): serve images via jsDelivr CDN by @ReSerendipity in #41
  • 游戏内 UX:返回键改派 ESC + 菜单浮钮 + 性能显示开关;组件版本登记表 by @ReSerendipity in #42
  • 第五轮:随机启动闪退修复(indexOf 越界)+ 加载 UI 品牌化 + 性能显示 13 项多选 by @ReSerendipity in #43
  • docs(readme): add real emulator screenshots by @ReSerendipity in #44
  • 第六轮:HUD 重复修复 + 长按管理/桌面快捷方式/导入进度/菜单开关/外接控制器闪退 by @ReSerendipity in #45
  • 第七轮:原生游戏收入应用内部(收纳库)+ 导入后源目录清理选项 by @ReSerendipity in #46
  • 第八轮:性能监控 0/N/A 三根因修复 + 游戏库多选模式 by @ReSerendipity in #47
  • 第九轮(上):多选操作栏 Swiss 化重设计;「更多设置」黑框排查登记 by @ReSerendipity in #48
  • 第九轮(下):「更多设置」大黑框取证修复(完成条纸面化)+ 全站 UI 一致性扫描 by @ReSerendipity in #49
  • 第十轮:引擎预设 dxwrapper 分化 + 按引擎 Wine 版本机制(任务一/二) by @ReSerendipity in #50
  • docs:社区 wine-9.2 预编译包路线实测关闭 by @ReSerendipity in #51
  • docs:TD-09 片头绕过实验负结果,修正因果模型 by @ReSerendipity in #52
  • docs:TD-09 主渲染面正交对照收口,zink 供 GL 实验负 by @ReSerendipity in #53
  • docs:第十轮收口与设备交接(release 装机、数据清空事实) by @ReSerendipity in #54
  • fix:导入改系统文件夹选择器,修导入假成功链(D1–D5) by @ReSerendipity in #55
  • fix:真机复验补三处(标题取索引名、文件数按游戏根、取消清暂存) by @ReSerendipity in #56
  • feat:游戏库分类(引擎自动 / 预置品类 / 自定义标签) by @ReSerendipity in #57
  • fix:数据安全三件(TD-20 收纳副本 / TD-21 索引原子写 / TD-24 存档串档) by @ReSerendipity in #58
  • chore(release):11.4 版本位与 CHANGELOG 收口 by @ReSerendipity in #59

Full Changelog: v11.3...v11.4