背景
在开发HarmonyOS应用时,默认创建的工程会有一个entry module,实际应用场景为了代码或者功能解耦,我们需要用到module来进行隔离。根据鸿蒙3.0/3.1/4.0官方指导,我们可以了解到关于module的类型,以及依赖关系,本篇文章将详细为大家介绍一下module的使用
准备
- 请按照鸿蒙官方网站中的"文档/指南"配置开发环境
- HarmonyOS 4.0系统手机
工程效果
概念概况
应用研发
应用共分为四个module,名称分别为entry, harlibrary, hsplibrary, modulefeature
- entry: 应用主入口
- harlibray: 实践entry如何依赖共享静态库
- hsplibrary: 实践entry如何依赖共享动态库
- modulefeature: 实践entry如何使用feature
创建harlibray
har依赖文档中,可参考"引用本地文件夹,有如下两种方式"字样描述。
注意:folder,在文档中没有注明规则,你可以参考本篇文章中的设置,必须以@ohos开头,否则在entry模块中引用时会报错
创建hsplibrary
备注:本篇文章实践中,创建了一个CustomComponent.ets文件,用于渲染文本,最终会被entry 模块中的index.ets文件调用
创建modulefeature
在DevEco Studio中,由于已经存在了一个entry类型module, 因此,在按照Empy Ability模版创建时,类型默认只能是feature
添加依赖
-
entry依赖harlibrary
- 工程根目录/oh-package.json5中添加如下依赖, 注意:"@ohos"必须要,"harlib"属于自己取的名字,"file:"也是固定开头
less"dependencies": { "@ohos/harlib": "file:harlibrary" }
-
entry依赖hsplibrary
- 工程根目录/entry/oh-package.json5中添加如下依赖, 注意:"@ohos"必须要,"hsplib"属于自己取的名字
perl"dependencies": { "@ohos/hsplib": "../hsplibrary" }
-
entry依赖modulefeature
- 其实不能叫做依赖,'共存"更为合适
- entry 如果想要使用modulefeature中的UIAbility,需要先将modulefeature一同打包进入.app中,基本操作步骤如下, 亦可参考官网文档
编译安装
在工具栏选择"entry"模块,点击绿三角图标,即可完成编译安装。
备注: 注意要添加签名,否则无法安装