项目开发中经常将具有共用性的模块剥离出来制作成公用库,以供其他模块调用。这样不但能够减少项目中的冗余代码量,而且能够在一定程度上保证代码的一致性,提高代码质量。
下面就来说一下HarmonyOS开发中共享包(共用库)的制作,HarmonyOS提供了静态共享包和动态共享包两种形式,这里说的是静态共享包。
制作静态库
如图,在新建模块中选择静态库,依照ide提示完成新建。
实现共享库
实现共享库common_lib的功能,新建Network.ets,并提供静态方法getRequest。注意Network类前面的export关键字,这表示这个类可以被导出使用。
声明可导出类
实现完共享库中需要供外部调用的功能后,还需要在Index.ets中进行声明:
export { Network} from 'xxx/xxx'
,其中Index.ets是静态库中已有的文件,export中的Network是导出文件名,from后面是引用路径。
引用静态库
在需要引用共享库的模块中声明所引用共享库的信息。如图在oh-package.json5中声明的引用的共享库名称为
common_lib
(该名称与common_lib库在其模块中的名称相同),并且提供了两种引用方式,一种是源码引用,另一种是引用.har静态包。这两种方式都是本地引用的方式,另外还有在线引用的方式。
注意.har
静态包需要先在common_lib模块中打包生成.har,具体方式是:选中common_lib - Build - Make Module 'Common_lib',完成后会在build/outputs文件夹下生成har静态包。
使用静态库
导入静态库之后就可以使用其提供的能力,比如这里调用了静态库中Network的getRequest方法。