周末我在学习的时候,发现打包出来的 HAP 包体积略大,这不仅影响下载速度,还可能拖慢安装和启动性能。于是我专门研究了一波优化方法,从原生侧到 RN 侧梳理出一套实用方案。本文就把这些实战经验分享出来,教你如何一步步给鸿蒙版 RN 应用 “瘦身”。
set(CMAKE_CXX_FLAGS "-s")
说明:-s 在链接阶段剥离符号表和调试信息,显著减小产物大小。
/*
path: CMakeLists.txt 文件位置
arguments: 额外构建参数
cppFlags: 传递给 C++ 的编译选项,这里设置 -s 以剥离符号
*/
"buildOption": {
"externalNativeOptions": {
"path": "./src/main/cpp/CMakeLists.txt",
"arguments": "",
"cppFlags": "-s",
},
},
在 DevEco Studio 的 Build Mode 中选择 release:

image-20250907163616892
Release 构建默认进行代码压缩与优化,产物更小更稳定。
参考「应用包大小优化」,在 module.json5 中开启:
{
"module": {
// ...
"compressNativeLibs": true
}
}
如无需在 x86_64 模拟器运行,可仅构建 arm64-v8a:
"buildOption": {
"externalNativeOptions": {
"abiFilters": ["arm64-v8a"]
}
}
.hbc)体积更小、启动更快优化前 | 优化后 | |
|---|---|---|
照片 | ||
体积 | 56.6M | 28.1M |
验证建议:
-s 已生效compressNativeLibs 后加载变慢.hbc如果大家有好的建议,也可以评论区留言。