HarmonyOS 鸿蒙Next 在DevEco Studio 3.0中进行包含native的module开发时,打包libc++.so导致har过大

HarmonyOS 鸿蒙Next 在DevEco Studio 3.0中进行包含native的module开发时,打包libc++.so导致har过大 在DevEco Stdio中开发包含native的module时,在最后打包时,发现har中的libs子目录下包含了libc++.so, 这个库的大小约1.2MB

如果在release的har包去掉libc++.so

4 回复

楼主您好 请参考我发的图片配置

更多关于HarmonyOS 鸿蒙Next 在DevEco Studio 3.0中进行包含native的module开发时,打包libc++.so导致har过大的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


![](https://alliance-communityfile-drcn.dbankcdn.com/FileServer/getFile/cmtybbs/505/318/922/2850086000505318922.20220420105944.90548401306952392861130523675376:50001231000000:2800:66E153826DB6910035A1545FD2F1D2279F3C06DEF8A21FB228301E0875528BC0.png)

![](https://alliance-communityfile-drcn.dbankcdn.com/FileServer/getFile/cmtybbs/505/318/922/2850086000505318922.20220420105955.81807206291346181241337108868937:50001231000000:2800:61C401B68C4A72B5AEEDE6D7EA037195DA7392372FF795EBE7C298BFA8F01B52.png)

欢迎开发小伙伴们进来帮帮楼主

在HarmonyOS鸿蒙Next中,使用DevEco Studio 3.0进行包含native模块的开发时,如果打包libc++.so导致har文件过大,这通常是因为libc++.so库文件体积较大,且可能包含了不必要的功能或架构支持。

要解决这个问题,可以考虑以下几个方向:

  1. 裁剪libc++.so:检查是否有可能裁剪掉libc++.so中不需要的部分。例如,如果应用只针对特定的CPU架构,可以只包含该架构的库文件,避免包含其他架构的冗余代码。

  2. 使用更小的C++标准库评估是否可以使用更轻量级的C++标准库替代libc++.so,或者寻找是否有针对鸿蒙系统优化的库版本。

  3. 动态链接:如果可能,考虑将libc++.so作为系统库动态链接,而不是将其打包进har文件中。这要求目标设备已经预装了该库。

  4. 检查构建配置:仔细检查DevEco Studio的构建配置,确保没有错误地将不必要的文件或库包含进har包中。

  5. 使用工具分析:利用工具分析har包的内容,找出导致体积过大的具体原因,并针对性地进行优化。

如果问题依旧没法解决请联系官网客服,官网地址是:https://www.itying.com/category-93-b0.html

回到顶部