前言
Ability Kit(程序框架服务)提供了应用程序开发和运行的应用模型,是系统为开发者提供的应用程序所需能力的抽象提炼,它提供了应用程序必备的组件和运行机制。
为复杂应用而设计
1.多个应用组件共享同一个ArkTS引擎(运行ArkTS语言的虚拟机)实例,应用组件之间可以方便的共享对象和状态,同时减少复杂应用运行对内存的占用。
2.采用面向对象的开发方式,使得复杂应用代码可读性高、易维护性好、可扩展性强。
3.提供模块化能力开发的支持。
原生支持应用组件级的跨端迁移和多端协同
Stage模型实现了应用组件与UI解耦:
1.在跨端迁移场景下,系统在多设备的应用组件之间迁移数据/状态后,UI便可利用ArkUI的声明式特点,通过应用组件中保存的数据/状态恢复用户界面,便捷实现跨端迁移。
2.在多端协同场景下,应用组件具备组件间通信的RPC调用能力,天然支持跨设备应用组件的交互。
支持多设备和多窗口形态
应用组件管理和窗口管理在架构层面解耦:
1.便于系统对应用组件进行裁剪(无屏设备可裁剪窗口)。
2.便于系统扩展窗口形态。
3.在多设备(如桌面设备和移动设备)上,应用组件可使用同一套生命周期。
平衡应用能力和系统管控成本
Stage模型重新定义应用能力的边界,平衡应用能力和系统管控成本。
1.提供特定场景(如服务卡片、输入法)的应用组件,以便满足更多的使用场景。
2.规范化后台进程管理:为保障用户体验,Stage模型对后台应用进程进行了有序治理,应用程序不能随意驻留在后台,同时应用后台行为受到严格管理,防止恶意应用行为。
ArkUI: Ability Kit在UIAbility组件可以使用ArkUI提供的组件、事件、动效、状态管理等能力。
ArkTS:ArkTS提供了语言运行时相关能力。