Repository navigation
v0.3.5
完整安装包:Kaze-SLauncher-v0.3.5-arm64-v8a.apk(arm64-v8a,推荐)
或 Kaze-SLauncher-v0.3.5-armeabi-v7a-experimental.apk(armeabi-v7a,实验性)
增量补丁(设置 → 更新方式 → 增量补丁):约 1.39 MB,只下变化的部分。
补丁要用你当前已装的 v0.3.4 当基线,拼装后会校验 sha256 与签名。
Added
- 设置里可选「更新方式」:完整安装包 / 增量补丁,默认完整安装包。
更新方式新增在设置页的更新分区(自动更新 / 更新通道 / 更新方式 / 检查更新)。- 默认整包是刻意的:补丁要拿本机已装 APK 当基线拼装,虽然每道都校验
(baseSha256 / targetSha256 / 签名),但比"直接下完整包"多一环;
让用户显式选"省流量"更稳妥。 - 只影响下载:
UpdateInstaller.download(..., allowPatch = false)时跳过补丁,
直接下整包;补丁失败本来就会自动回退整包,这条路径不变。
Changed
- 设置页的「检查更新」不再显示 changelog:只提示"发现新版本 x.y.z,
点「下载并安装」开始更新"。更新说明仍在应用启动时的更新弹窗里,或点开 Release 页看。
Added
- Forge/NeoForge 安装时显示实时进度(真机反馈:"卡在这" —— 停在
Loading patches file: .../server.lzma)。查明不是卡死:那一步是 binarypatcher
对 ~50 MB 的 srg.jar 做 LZMA 解压 + 二进制差分,全程一行输出都没有,手机上要跑几分钟。- 安装期间每 0.5 秒刷新一行:
> 安装中 3 分 12 秒 · 已写出 41.2 MB(打补丁中,无输出属正常)
—— "已写出多少 MB"读的是输出 jar 的实际大小,是真实的解压/打补丁进度。 - 用
logReplace原地替换一行,不会把控制台刷爆;并且只在安装器静默超过 2 秒
时才占那一行,否则会把安装器正在输出的正常日志顶掉。 - 进度只扫
libraries/net/minecraftforge/forge/这个小目录(限制深度):每 0.5 秒
全量 walk 一次外部存储(FUSE)会把主线程拖垮。 - 安装完成时一并报出总耗时。
- 安装期间每 0.5 秒刷新一行:
Fixed
- 更新下载过程中"取消不了"(真机反馈)—— 两个原因叠在一起:
- 界面毫无反馈:点「取消下载」只把一个标志置真,状态行 / 按钮 / 进度条全都不变
(按钮还写着"取消下载"),要等下载循环跑回上一次检查点才收尾 —— 观感就是点了没用。
现在点下去立刻把状态行换成「正在取消下载…」、按钮变成「正在取消…」并禁用;
点弹窗外部也走同一条路径。 - 有几段完全不检查取消标志:取补丁元数据那段超时是 20 秒、探测下载源最多 8 秒、
补丁拼装(纯本地 1~3 秒)也没有取消回调 —— 这几段里点取消最长要等 20 秒才有反应。
现在每段网络调用前后都查一次;拼装完成后也查一次并删掉拼好的文件,
避免"用户已经取消了,包还是被装上去"。
- 顺带修:补丁下载的状态原本报在下载之后,整个下载期间界面停在上一条状态。
- 界面毫无反馈:点「取消下载」只把一个标志置真,状态行 / 按钮 / 进度条全都不变