购买
下载掌阅APP,畅读海量书库
立即打开
畅读海量书库
扫码下载掌阅APP

2.2 FA模型介绍

FA(Feature Ability)模型是HarmonyOS早期版本(API 8及更早版本)开始支持的模型,目前已经不再主推。

2.2.1 FA模型中的Ability

FA模型中的Ability分为PageAbility、ServiceAbility、DataAbility、FormAbility四种类型。其中:

· PageAbility是具备UI实现的Ability,是用户具体可见并可以交互的Ability实例。

· ServiceAbility也是Ability的一种,但是没有UI,为其他Ability提供调用自定义的服务,在后台运行。

· DataAbility也是没有UI的Ability,为其他Ability提供进行数据增、删、查的服务,在后台运行。

· FormAbility是卡片Ability,是一种界面展示形式。

2.2.2 FA模型的生命周期

在所有Ability中,PageAbility因为具有界面,也是应用的交互入口,因此生命周期更加复杂。

PageAbility的生命周期回调如图2-2所示。

其他类型Ability的生命周期可参考PageAbility生命周期去除前后台切换以及onShow的部分进行理解。

开发者可以在app.ets中重写生命周期函数,在对应的生命周期函数内处理应用相应逻辑。

图2-2 PageAbility的生命周期

2.2.3 FA模型的进程线程模型

应用独享独立进程,Ability独享独立线程,应用进程在Ability第一次启动时创建,并为启动的Ability创建线程,应用启动后再启动应用内其他Ability,会为每个Ability创建相应的线程。每个Ability绑定一个独立的JSRuntime实例,因此Ability之间是隔离的,如图2-3所示。

图2-3 FA模型的进程线程模型 p6JVadN9FFdTq7Rclpe3A58SDHUXPgE76hI2GALruqidixb1VOiWB5n0YTpaTU/O

点击中间区域
呼出菜单
上一章
目录
下一章
×