鸿蒙开发-Stage模型

前一阵刚学习鸿蒙开发,读到官方文档这里时,多少有点迷糊。

这里涉及到一些比较抽象的关键词:Stage模型ModuleAbilityLibraryHARHSPHAPUIAbility

当时只是快速看了一下,就直接去敲代码了。

现在感觉有必要再好好梳理、理解一下,以便更好的掌握整个鸿蒙app的开发。

1、Stage模型

Stage模型就是一种应用程序能力的抽象,对于开发者最直观的感受是开发态的工程结构、部署态的应用程序包结构。

在鸿蒙应用开发中还有另一种模型,叫FA模型。基本不需要关注,目前官方主推Stage模型。

参考文档

2、Module

在开发态,一个App可以对应多个Module(模块),Module是最基本的功能单元。每一个Module都可以独立编译和运行。

3、Ability、Library

而Module又有两种类型:

  • Ability 页面或者服务类型的Module。
  • Library 库类型的Module。

4、HAR、HSP

而Library库类型的Module又分为两种类型:

  • HAR,静态库。
  • HSP,动态库。

目前OpenHarmony三方库中心仓只支持HAR,如果想引用HSP动态包,只能本地路径引用。

5、HAP

HAP是鸿蒙应用开发最具特色的地方。HAP是部署态的粒度存在。它与开发态的Module是一一对应的。

一个鸿蒙App可以按功能、业务分为多个HAP,这些HAP中有且仅有一个Entry主包,和若干个Feature副包。在打包分发给用户时候,可以按需组合分发。比如主包+副包1分发给设备类型A,主包+副包2分发给设备类型B。

6、UIAbility

UIAbility是对应最近任务列表中的一个任务(压入后台挂起后的入口)。

一个App可以有至少一个UIAbility。取决于UIAbility使用哪种模式。

其有三种模式,分别为:

  • singleton(单实例模式)
  • multiton(多实例模式)
  • specified(指定实例模式)

参考文档

相关推荐
lilian2336 小时前
HarmonyOS 7 新特性(二十五)|智慧手势:意图识别与误触治理
华为·harmonyos
贾伟康8 小时前
【时光清单|14】HarmonyOS ArkTS 主导航实战:统一页面入口、返回路径和参数校验
harmonyos·arkts·arkui·navigation·路由管理
贾伟康13 小时前
【时光清单|05】HarmonyOS ArkTS 倒计时卡片实战:适配 2x2、2x4 与 4x4 多尺寸
harmonyos·arkts·arkui·服务卡片·formextensionability
小雨青年13 小时前
【HarmonyOS 7 悬浮页签深度实战】07 折叠屏、平板与宽窗口的布局适配
华为·harmonyos
熊猫钓鱼>_>15 小时前
鸿蒙AI Agent新范式:从“对话式辅助”到“工程化代理”的Harness架构实战解析
人工智能·笔记·学习·华为·架构·harmonyos
大锅盖115 小时前
HarmonyOS ArkUI 非遗纹样素材平台设计复盘:朱砂宣纸与鎏金黛蓝的文化守护
华为·harmonyos
2501_9197490316 小时前
华为鸿蒙管理学习生活与工作APP—小羊管理
学习·华为·生活·harmonyos·鸿蒙
贾伟康16 小时前
【时光清单|20】HarmonyOS ArkTS AppGallery 发布复查实战:核对包名、版本、设备、素材和离线声明
harmonyos·arkts·agc·appgallery·发布复查
lilian23317 小时前
HarmonyOS 7 新特性(二十三)|hiprofiler + hidumper:跨堆内存分析
华为·harmonyos
嵌入之梦18 小时前
鸿蒙OS IoT设备开发之基础 —— 外设驱动
物联网·华为·harmonyos