一、概述
OpenHarmony从API 9开始,Ability框架引入了Stage模型作为第二种应用形态。这是作为FA模型的一种补充。
Stage模型的设计思想如下图所示:
Stage模型的设计基于如下三个出发点:
1.应用的能力与系统总体功能和功耗的平衡
2.原生支持组件级的迁移和协同
Stage模型通过Ability与UI分离及UI展示与服务能力合一等模型特性。
3.支持多设备和多窗口形态的特点
下图展示了Stage模型中的基本概念:
ExtensionAbility机制
不同于用于页面展示的Ability,ExtensionAbility提供的是一种受限的服务运行环境。ExtensionAbility具有如下特点:
独立于主进程的单独进程运行,与主进程无IPC,共享一个存储沙箱;
独立的Context提供基于业务场景的api能力;
由系统触发创建,应用不能直接创建;
ExtensionAbility和进程的生命周期受系统管理。
Hap应用进程模型介绍
OpenHarmony系统中的应用均满足单进程模型。所谓的单进程模型,是指不允许应用配置多进程(并非只有一个进程),应用中所有的进程都是由系统创建和管理的。每个应用至多并存三类进程:
1.主进程:运行所有的Ability组件、页面和业务逻辑;
3.Render进程:专门为webview创建的进程,用于加载webview的渲染库。
下图展示了应用的进程模型: