鸿蒙的deveco studio在创建module时,有一个Shared library,有一个Static Library。这两个类型的library都生成了har文件,如果使用static library。可以直接将har文件复制到使用该库的工程中,添加依赖,就可以联通这个har一起打包安装在手机上,但Shared library har不能这样做,无法连同har一起打包安装在手机上,会提示没有找到har。这个Shared library应该如何用,是动态装载,类似load('abc.har')这样的?
本文参与了思否 HarmonyOS 技术问答马拉松,欢迎正在阅读的你也加入。
HSP(Harmony Shared Package)是动态共享包,可以包含代码、C++库、资源和配置文件,通过HSP可以实现应用内的代码和资源的共享。HSP不支持独立发布,而是跟随其宿主应用的APP包一起发布,与宿主应用同进程,具有相同的包名和生命周期。使用HSP中的接口,首先需要在使用方的oh-package.json5中配置对它的依赖,(和静态包Har包引用方式类似),依赖配置成功后,就可以像使用HAR一样调用HSP的对外接口了。
对外暴露的接口,需要在入口文件index.ets中声明: