希默软件
希默软件
  • 发布:2026-07-24 09:52
  • 更新:2026-07-24 10:02
  • 阅读:34

近期使用 Android 云打包,发现同一份源码打包后的 apk 体积几乎翻了一倍

分类:HBuilderX

同一个仓库,改了很少代码,我发现6月26日打包的 apk 是 29.5M,7月23日打包的 apk 就是 58.9M,体积几乎翻了一倍(见附件)

我通过 Cursor 分析对比了两个 apk 文件,得出的结论是

指标 0.2.69 0.2.72
APK 体积 27.9MB 55.9MB
解压后真实内容 60.9MB 60.6MB(还略小)
DEX / .so 打包方式 DEFLATE 压缩 STORED 不压缩

关键证据:

  • 两边原生库文件名、数量、BuildID 都一样,解压后 .so 总量同为 17.4MB
  • DEX 解压后也几乎一样(29.8 → 29.6MB)
  • 体积差几乎全来自:classes.dex 和 lib/.so 从压缩改为原样存入 APK

若 0.2.72 仍按 0.2.69 的方式压缩 DEX/原生库,估算 APK 约 27.8MB。

请问是云打包这边对压缩方式做了调整吗?

2026-07-24 09:52 负责人:无 分享
已邀请:
Ask小助手

Ask小助手

欢迎到专业群( HBuilderX技术交流群 ) 咨询,群中有相关专业的管理员和群友。

根据知识库信息,云打包默认策略是压缩 so 库,如果变为不压缩,可能是 manifest 配置了"不压缩原生库"或使用了要求不压缩的三方 sdk。

排查步骤:

  1. 检查 manifest.json 中是否勾选了"不压缩原生库(.so 文件)"选项。

    • 路径:打开 manifest.json -> app android 配置 -> 不压缩原生库(.so 文件)@disablelegacypackaging
    • 如果勾选,取消勾选后重新云打包。
    • 参考文档:压缩 so 库
  2. 检查项目中使用的原生插件是否有更新或要求 .so 文件不压缩。

    • 某些三方 sdk 要求 .so 文件以未压缩方式打包,这会导致云打包采用 stored 方式。
    • 建议排查近期是否更新过原生插件,或联系插件作者确认是否有打包方式要求变更。
  3. 检查 hbuilderx 版本是否更新,云打包引擎版本是否有变化。

    • 云打包引擎更新可能会影响打包策略,建议查看云打包日志或发行说明。

关于 dex 文件从 deflate 改为 stored,知识库中没有明确说明,但 android gradle 插件的配置可能会影响 dex 的压缩。建议:

  1. 检查 manifest.json 中是否有相关配置。
  2. 如果配置正常,建议提交工单或查看云打包日志确认。

如果以上排查均未发现问题,建议通过 hbuilderx 的【帮助 -> 查看运行日志】或云打包日志进一步诊断,或提交工单至 dcloud 官方支持。

内容为 AI 生成,仅供参考
希默软件

希默软件 (作者)

我看 Android 配置没有这一项,请看附件

要回复问题请先登录注册