回复
     HarmonyOS应用开发 - strip编译配置优先级 原创 精华
TiZizzz
 发布于 2025-10-7 16:27
 浏览
 0收藏
概述
文档环境
DevEco Studio 版本:DevEco Studio 6.0.0 Release(6.0.0.858)
SDK 版本:6.0.0 (API20)
功能简介
- strip配置作用:是否移除 .so 文件中的符号表和调试信息,默认配置为true。
 - 在编译发布包时,应采用默认配置或设置为true,去除 so 库中的调试信息和符号表,显著减小 so 文件体积。
 - 在性能分析(如内存分析或耗时分析)场景中,必须将 strip 字段显式设置为 false。采集函数栈解析符号需要附带符号表信息,无符号表信息可能采集不到函数名称。
 - 本文中的配置以DevEco Studio 6.0.0 Release新建工程为例,帮助大家了解strip配置在不同位置的优先级。
 
strip编译配置优先级
基础配置
不区分Debug包和Release包,不区分Hap包和Har包,默认配置均为true。
{
  "nativeLib": {
    "debugSymbol": {
      "strip": true
    }
  }
}配置位置
- 工程级build-profile.json5中product的buildOption。
 

- 工程级build-profile.json5中buildModeSet的buildOption。
 

- 模块级build-profile.json5中公共buildOption。
 

- 模块级build-profile.json5中buildOptionSet。
 

- 模块级build-profile.json5中target的config中buildOption。
 

配置优先级
使用file命令查看so文件是否被stripped
strip: true

strip: false

测试不同位置的配置对最终配置的影响
工程级 product配置  | 工程级 buildModeSet配置  | 模块级 buildOption配置  | 模块级 buildOptionSet配置  | 模块级 target配置  | strip 最终配置  | 
不配置  | 不配置  | 不配置  | 不配置  | 不配置  | true  | 
false  | 不配置  | 不配置  | 不配置  | 不配置  | false  | 
true  | false  | 不配置  | 不配置  | 不配置  | true  | 
false  | true  | 不配置  | 不配置  | 不配置  | false  | 
不配置  | false  | true  | 不配置  | 不配置  | true  | 
不配置  | true  | false  | 不配置  | 不配置  | false  | 
不配置  | 不配置  | false  | 不配置  | 不配置  | false  | 
不配置  | 不配置  | false  | true  | 不配置  | true  | 
不配置  | 不配置  | false  | true  | false  | false  | 
不配置  | true  | false  | true  | false  | false  | 
不配置  | true  | false  | true  | 不配置  | true  | 
不配置  | false  | false  | true  | 不配置  | true  | 
false  | false  | false  | true  | 不配置  | true  | 
true  | true  | true  | false  | 不配置  | false  | 
true  | true  | true  | true  | false  | false  | 
优先级
- 模块级target配置 > 模块级buildOptionSet配置> 模块级 buildOption配置 > 工程级product配置 > 工程级buildModeSet配置 。
 - 构建Hap包时,不受依赖的Har包中的配置影响。
 - 构建Hap包和Har包时,只读取所在模块级的build-profile.json5和工程级build-profile.json5。
 
©著作权归作者所有,如需转载,请注明出处,否则将追究法律责任
    已于2025-10-7 16:29:30修改
 
        赞
        
 
        收藏 
      
 回复
  相关推荐
 



















