如何导入其他module的so库? 官方
头像 鸿蒙小助手 2026-02-10 16:41:58    发布
7724 浏览 108 点赞 1 收藏

本问答帖原创发布在华为开发者联盟社区 ,欢迎开发者前往论坛提问交流。

详细描述:

项目里有多个模块,在其中一个公共模块,创建了cpp目录,放入了c++代码,并配置好了index.d.ts、cmake、napi等信息,在本模块界面中通过import libxx from 'libxx.so'可以正常调用C++函数。但是在其他模块中,用这样的导入方式IDE会报错,应该如何正确导入?

解决方案:

跨模块使用so库可以用以下方法:

  1. 纯CPP部分单独用ndk编译成.so或.a并放在HAR或HSP中。
  2. 依赖上述的HAR或HSP后,使用已链接+头文件的方式,在链接的时候,直接写库文件的名字即可,这样纯cpp的so实现了多模块共享。需要通过napi使用的也只需要单独写napi代码即可,此时napi封装后的能力也可以通过模块依赖的方式被其他模块使用。

操作步骤、参考代码和相关讨论,请点击原帖查看:

https://developer.huawei.com/consumer/cn/forum/topic/0203162064009643100?fid=0109140870620153026&pid=0302162158973362670

©本站发布的所有内容,包括但不限于文字、图片、音频、视频、图表、标志、标识、广告、商标、商号、域名、软件、程序等,除特别标明外,均来源于网络或用户投稿,版权归原作者或原出处所有。我们致力于保护原作者版权,若涉及版权问题,请及时联系我们进行处理。
分类
HarmonyOS
头像

鸿蒙小助手

致力于为鸿蒙开发者谋福利

1129

帖子

8

提问

13572

粉丝

关注
最新发布
热门推荐