鸿蒙中支持har包和hsp包的创建,其中har包是静态共享库,编译后会生成一个以har为后缀的文件。Hsp是动态共享包,编译后生成一个以hsp为后缀的文件。
Index.ets文件是HAR导出声明文件的入口,HAR需要导出的接口,统一在Index.ets文件中导出。在编译构建HAR的过程中,不会将模块中的C++代码直接打包进.har文件中,而是将C++代码编译成动态依赖库.so文件放置在.har文件中的libs目录下。
选择static library方式,并且包含native的选项在CMaakeLists.txt文件中包含类的cpp文件,才能进行编译将napi的函数进行设置导出共ark语言调用也就是ets中调用(这个的导出也就是so的接口导出)因为在arkts中是无法直接调用so的接口,需要通过napi中转到ets中进行调用下面就是so中导出的接口通过napi中转后,其他第三方就可以调用so的接口了。最后需要再index.ets文件中设置arkts的接口导出,接口导出需要指明到具体文件上生成har包后,就可将har包放到要调用的代码目录中了,放在entery的目录上即可安装har包到项目中,前面是定义的har包的名称,后面指定的是放到目录中的har包。接着会提示错误,最后,只要执行install 就可以了,这样就会将har包安装到项目中了项目中调用har包的导出接口,需要先用import方式导入
还没有评论,来说两句吧...