harmony中调用自定义so
·
由于在项目开发过程中需要将一些数据隐藏,但是又不想暴露出去,可以将数据放到so库中,在so库中经过一些加密算法的加工在给arkts端使用。以下是自定义的so库的步骤。
1.生成.so
创建Native工程:DevEco Studio -> File -> New -> Create Project -> Native C++

创建成功之后,main目录下会有一个cpp目录,在cpp中可以编写自己的c代码了

其中 Index.d.ts: 是一个声明文件,用来声明导出的 C++ 函数,在 JS 中可以直接使用这些函数。
oh-package.json5: 这是一个配置文件,用来配置so名称、版本等信息
CMakeLists.txt、napi_init.cpp: C++代码以及 CMakeLists.txt 文件,用来编译生成 .so 文件,.cpp 文件内用于编写你的逻辑代码
我的c代码,大致如下:

其中,
.nm_modname = “entry”,必须和你的目录名字保持一致。
将你的函数注册到index.d.ts中即可

2.打包
Build -> Build Module,在build -> intermediates -> libs -> default目录下生成.so

3.使用.so
将自己的so库copy到你的项目中,放到新建的libs下

在oh-package.json5添加依赖

在使用的地方引入

以上就可以成功调用了
更多推荐



所有评论(0)