V1.4.5: 修正下载失败的错误归因 + 清理残留临时文件(为定位"空间不足"误报)
现象: 极米 H1S 上报告「曲库分区空间不足(当前可用 6.04 GB)」——数字自相矛盾。 核实(本地实测 Muse 协议): - 曲库压缩包 430,575,974 字节;从 gzip 尾部 ISIZE 读出解压后为 965MB, 峰值占用约 1.4GB,6.04GB 可用空间根本不构成空间不足。 - 结论: 真正抛出的异常另有原因(消息里含 no space left), 被 isNoSpaceError() 只按消息文本匹配而误判成了"空间不足"。 修复: - readableError 不再只看异常消息: 报告完整异常链 + 可用空间, 并用真实写入探针(AppPaths.probeWrite,写 8MB 再删)区分 "真的写不进去" 与 "其实能写"(inode 耗尽/配额/ROM 限制同样报 ENOSPC, 而 usableSpace 仍显示数 GB)。 - 失败时上报单行完整诊断到远程日志: DB-SYNC download failed | <异常链> | root/free/total/envState/probe/proc-mounts。 - 界面失败文案直接显示原始异常,不再用可能误导的"空间不足"结论。 - AppPaths 新增 probeWrite() 与 diagnose()(含 /proc/mounts 相关挂载点)。 - MuseDbSync 失败时同时清理 muse.db.gz.download 与 muse.db.download: 原先失败只删前者,残留的 965MB 分片在反复重试时会白占空间。 版本 1.4.4(24) 到 1.4.5(25);签名证书不变。
This commit is contained in:
@@ -160,7 +160,7 @@ $BT/apksigner verify 目标名.apk
|
||||
|
||||
### 版本号
|
||||
|
||||
- `app/build.gradle`:`versionName "1.4.4"` / `versionCode 24`(18~21 被本机临时诊断包占用过)
|
||||
- `app/build.gradle`:`versionName "1.4.5"` / `versionCode 25`(18~21 被本机临时诊断包占用过)
|
||||
- App 内显示统一用纯版本号(不加 `(versionCode)` 括号)
|
||||
- ⚠️ **发布构建已开启 NewApi 闸门**(`lint { checkReleaseBuilds true; fatal += ['NewApi'] }`):
|
||||
任何「调用了高于 `minSdk 21` 且未做版本守卫的 API」都会让 `assembleRelease` 直接失败。
|
||||
|
||||
Reference in New Issue
Block a user