HarmonyOS 鸿蒙Next Ability 框架概述【Stage模型系列1】
HarmonyOS 鸿蒙Next Ability 框架概述【Stage模型系列1】
Ability 框架概述
Ability 是应用所具备能力的抽象,也是应用程序的重要组成部分。Ability 是系统调度应用的最小单元,是能够完成一个独立功能的组件。一个应用可以包含一个或多个 Ability。
Ability框架模型具有以下两种形态:
第一种形态为 FA 模型。API 8 及其更早版本的应用程序只能使用 FA 模型进行开发。FA模型将 Ability 分为 FA(Feature Ability)和 PA(Particle Ability)两种类型,其中 FA 支持 Page Ability,PA 支持 Service Ability、Data Ability、以及 FormAbility。
第二种形态为 Stage 模型。从 API 9 开始,Ability 框架引入了 Stage 模型作为第二种应用框架形态,Stage 模型将 Ability 分为 PageAbility 和 ExtensionAbility 两大类,其中ExtensionAbility 又被扩展为 ServiceExtensionAbility、FormExtensionAbility、DataShareExtensionAbility 等一系列 ExtensionAbility,以便满足更多的使用场景。
Stage 模型与 FA 模型最大的区别
Stage 模型与 FA 模型最大的区别在于:Stage 模型中多个应用组件共享同一个虚拟机,而 FA 模型中,每个应用组件独享一个虚拟机。因此在 Stage 模型中,组件之间可以方便的共享对象和状态。相较于 FA 模型,Stage 模型具有以下显著优势:
- 为复杂应用设计:多应用组件在运行时共享同一个虚拟机引擎,从而减少复杂应用运行内存的占用。采用面向对象的开发方式,使得复杂应用代码可读性高、易维护好、可扩展性强。
- 程序逻辑与用户界面解耦:窗口部分可单独销毁和重建,窗口与 Ability 可跨设备运行,Ability 可在不启动界面的情况下响应请求。
- 开放的扩展能力点:支持卡片、输入法、快捷开关、分享、壁纸、长时任务等应用开发。
Stage 模型作为鸿蒙系统的主要应用编程模型,开发者通过它能够更加便利地开发出分布式场景下的复杂应用。基于 Stage 模型拥有的显著优势,更推荐开发者使用 Stage 模型。
更多关于HarmonyOS 鸿蒙Next Ability 框架概述【Stage模型系列1】的实战教程也可以访问 https://www.itying.com/category-93-b0.html