如何导入其他module的so库?

本问答帖原创发布在华为开发者联盟社区 ,欢迎开发者前往论坛提问交流。
详细描述:
项目里有多个模块,在其中一个公共模块,创建了cpp目录,放入了c++代码,并配置好了index.d.ts、cmake、napi等信息,在本模块界面中通过import libxx from ‘libxx.so’可以正常调用C++函数。但是在其他模块中,用这样的导入方式IDE会报错,应该如何正确导入?
解决方案:
跨模块使用so库可以用以下方法:
- 纯CPP部分单独用ndk编译成.so或.a并放在HAR或HSP中。
- 依赖上述的HAR或HSP后,使用已链接+头文件的方式,在链接的时候,直接写库文件的名字即可,这样纯cpp的so实现了多模块共享。需要通过napi使用的也只需要单独写napi代码即可,此时napi封装后的能力也可以通过模块依赖的方式被其他模块使用。
操作步骤、参考代码和相关讨论,请点击原帖查看:
本文由 @华为开发者联盟 授权发布于人人都是产品经理。未经作者许可,禁止转载
题图来自Unsplash,基于CC0协议
该文观点仅代表作者本人,人人都是产品经理平台仅提供信息存储空间服务
评论
- 目前还没评论,等你发挥!

起点课堂会员权益



