鸿蒙学习ArkTS之Module创建和引用

1:Module是什么

Module是应用/元服务的基本功能单元,包含了源代码、资源文件、第三方库及应用/元服务配置文件,每一个Module都可以独立进行编译和运行。一个应用/元服务通常会包含一个或多个Module,因此,可以在工程中创建多个Module,每个Module分为Ability和Library两种类型。

个人理解:

Module是一个负责实现指定功能的模块,可单独编译和运行.运用Module可以方便管理指定功能的代码逻辑

2:Module创建

  • Static Library (HAR)

    HAR(Harmony Archive)是静态共享包,可以包含代码、C++库、资源和配置文件。通过HAR可以实现多个模块或多个工程共享ArkUI组件、资源等相关代码。HAR不同于HAP,不能独立安装运行在设备上,只能作为应用模块的依赖项被引用。

  • Shared Library(HSP)

    DevEco Studio支持开发动态共享包HSP(Harmony Shared Package)。在应用/元服务开发过程中部分功能按需动态下载,或开发元服务场景时需要分包加载,可使用HSP实现相应功能。当有多个安装包需要资源共享时,也可利用HSP减少公共资源和代码重复打包。

3:Moudle的使用

1: index.ets外部暴露方法调用
2:引用moudle
3:调用

使用流程:

  • 创建Moudle 编写index.ets 将编写的工具类对外暴露
  • 在需要引用module的组件内的 oh-package.json5 类中引用 module
  • 在类中导入对外暴露的工具类 import { ImageProcessUtil } from 'lib_util';
  • 然后就可以直接使用了

总结

Static Library (HAR) 是静态的 不能单独运行(类似组件化)

Shared Library(HSP) 动态的可以按加载(类似插件化)

初期 HAP + HAR 就可以了

相关推荐
行者-全栈开发8 小时前
【鸿蒙心迹】三方库移植(二)——CMake 交叉编译与符号冲突排查实录(HarmonyOS 7.x)
harmonyos·cmake·交叉编译·三方库移植·ohos·符号冲突
梦想不只是梦与想10 小时前
鸿蒙三方库源码调试
harmonyos·断点调试·三方源码调试
用户1179104883312 小时前
AI输出满屏井号星号?hmharness把Markdown渲染成终端表格 GitHub:swsgbl/hmharness
ai编程·harmonyos
了一12314 小时前
鸿蒙ArkWeb 长截图(滚动截图)技术方案总结
harmonyos
熊猫钓鱼>_>15 小时前
平行视界兼容模式与魔法变量配置避坑【鸿蒙心迹】
运维·服务器·开发语言·笔记·华为·harmonyos·openharmony
罗四强16 小时前
第2篇:环境搭建:DevEco Studio 安装 + 第一个 Hello World
harmonyos·鸿蒙·鸿蒙系统
用户1179104883317 小时前
AI终端里复制不了代码?hmharness把鼠标还给终端 GitHub:swsgbl/hmharness
ai编程·harmonyos
贾伟康19 小时前
HarmonyOS 端侧智能体长对话压缩:摘要版本、证据索引与安全回退
harmonyos·arkts·状态恢复·上下文压缩·端侧智能体
NJPJI_Yang20 小时前
鸿蒙操作系统小艺 Skill 开发实战:让应用被 HarmonyOS 7 一句话召唤
pytorch·深度学习·harmonyos
redtank200021 小时前
纯血鸿蒙学习效率三件套实测:背单词艾宾浩斯曲线、时间记录与睡眠辅助
学习·华为·harmonyos