HarmonyOS ArkTS调用so库
1,通过devEco studio生成so库。
2,将so复制到工程libs目录下。
3,在entry目录下oh-package.json5配置信息。
4,在src/main/cpp/types/libentry下建并且配置index.d.ts 和oh-package.json5。
5,在pages文件使用import testNapi from 'libentry.so'。
6,代码使用testNapi.add(2, 3)。
7,报错 :
[ArkRuntime Log] TypeError: Cannot read property add of undefined
06-25 00:20:44.989 11804-7448 C03f00/ArkCompiler
E [ArkRuntime Log] at anonymous (entry/src/main/ets/pages/CategoryPage.ets:146:42)
HarmonyOS
赞
收藏 0
回答 1
待解决
相关问题
ArkTS项目如何调用已有SO库?
1043浏览 • 1回复 待解决
HarmonyOS ohosTest调用so库失败
120浏览 • 1回复 待解决
HarmonyOS ArkTS如何调用.so包
77浏览 • 1回复 待解决
HarmonyOS 怎么调用现有的so库
48浏览 • 1回复 待解决
HarmonyOS ArkTS调用JS库
68浏览 • 1回复 待解决
HarmonyOS如何实现JNI,调用java平台的so库
446浏览 • 1回复 待解决
HarmonyOS 其他系统上的so如何提供ArkTS侧调用
96浏览 • 1回复 待解决
HarmonyOS 如何在so库中验证App包名和签名,从而保证so库调用的合法性
118浏览 • 1回复 待解决
HarmonyOS ArkTS如何引入和调用JS库?
341浏览 • 1回复 待解决
ArkTS侧与Native侧分别如何动态加载SO库
2576浏览 • 1回复 待解决
ArkTS中如何使用编译出来的Native so库
517浏览 • 1回复 待解决
ArkTS和so库的交互,HarmonyOS是否有和so库的交互方法,如果有请附带实例和步骤?
251浏览 • 1回复 待解决
HarmonyOS ArkTS如何调用web前端的js库
149浏览 • 1回复 待解决
HarmonyOS有ArkTS可以直接调用的ffmpeg库吗?
98浏览 • 1回复 待解决
HarmonyOS 引用so库报红
88浏览 • 1回复 待解决
HarmonyOS 引用so库程序崩溃
68浏览 • 1回复 待解决
HarmonyOS 如何适配自己的so库?
614浏览 • 1回复 待解决
HarmonyOS so库的正确引用方式
87浏览 • 1回复 待解决
如何在HarmonyOS app使用so库
57浏览 • 1回复 待解决
ArkTS 和.so交互的问题
352浏览 • 1回复 待解决
HarmonyOS 如何减小module中so库大小
122浏览 • 1回复 待解决
HarmonyOS 多个.a链接生成so库报错
65浏览 • 1回复 待解决
测试在sdk的module下链接so库后调用c++的方法报错
1130浏览 • 1回复 待解决
JNI so库HarmonyOS 重新编译工具
120浏览 • 1回复 待解决
HarmonyOS 调用C库
169浏览 • 1回复 待解决
1、使用HarmonyOS工具链编译 C++ 的源码,打包成HarmonyOS可以识别的so库,可以参考https://wentao-du.gitee.io/the-north-remembers/#/toolchains/third-party-libraries的动态库编译章节。
2、引入三方库,可以参考 https://gitee.com/openharmony-sig/tpc_c_cplusplus/blob/master/lycium/doc/app_calls_third_lib.md
引入三方库的几个要点:
2.1 entry/libs创建对应的目录,放入编译的三方库。
2.2 src/main/cpp 按照指定可以创建 thirdparty/三方库名称/不同平台的目录,lib 目录放入so库,include 放入 .h文件,注意thirdparty文件名称是固定的,不要改名字。
2.3 CMakeLists.txt文件中引入thirdparty 的 so 库路径和include文件路径。
3、添加 node-api接口,实现ArkTs和C++的相互调用,可参考:[https://gitee.com/openharmony-sig/tpc_c_cplusplus/blob/master/docs/thirdparty_knowledge.md###%E5%8C%97%E5%90%91%E5%BA%94%E7%94%A8%E4%B8%AD%E4%BD%BF%E7%94%A8](https://gitee.com/openharmony-sig/tpc_c_cplusplus/blob/master/docs/thirdparty_knowledge.md