Xcode 16构建iOS App后IPA与安装包体积暴涨,Hermes.framework异常增大求助
问题描述
使用Xcode 16.1生成iOS App构建包后,IPA及App体积出现大幅增加。对比Xcode 15.8的构建产物,体积增长核心来自Hermes.framework,其大小从3.1MB飙升至494.7MB。具体数据如下:
Xcode 15.8构建数据
- IPA大小:22.4 MB
- App大小:58.2 MB
- Hermes.framework大小:3.1 MB
Xcode 16.1构建数据
- IPA大小:198 MB
- App大小:598 MB
- Hermes.framework大小:494.7 MB
已尝试启用Bitcode,且参考过相关解决方案,但均无法有效降低App体积。
解决方案建议
以下是几个可尝试的解决方向:
精简Hermes编译架构:Xcode 16可能默认编译了多余架构(如同时包含arm64、arm64e及模拟器架构)。在Build Settings中,将
Architectures设为$(ARCHS_STANDARD),并在Release模式下把Build Active Architecture Only设为YES,避免编译不必要的架构。移除调试符号:Hermes.framework可能携带大量调试符号导致体积膨胀。可以在构建后用命令清理:
strip -x /path/to/Hermes.framework/Hermes也可在Xcode的Build Settings中,将
Strip Debug Symbols During Copy设为YES,Strip Style设为Non-Global Symbols。适配Hermes版本:Xcode 16的编译链有更新,当前使用的Hermes版本可能存在兼容性问题。尝试升级Hermes到最新稳定版,或降级到适配Xcode 16的特定版本,确保编译优化正常生效。
剔除模拟器架构切片:若构建的IPA包含模拟器架构(x86_64、arm64-simulator)会大幅增加体积。先查看架构信息:
lipo -info /path/to/Hermes.framework/Hermes若存在模拟器架构,执行移除命令:
lipo -remove arm64-simulator -remove x86_64 /path/to/Hermes.framework/Hermes -output /path/to/Hermes.framework/Hermes优化Hermes编译配置:如果是自行编译Hermes,确保开启编译优化(如
-O3),关闭调试模式,禁用不必要的功能模块(如调试工具、冗余日志),缩小最终二进制文件体积。
内容的提问来源于stack exchange,提问作者Madhu

