[文章]HarmonyOS/OpenHarmony应用开发-FA模型综述

阅读量0
0
1

FA模型整体架构****

HarmonyOS用户程序的开发本质上就是开发Ability。HarmonyOS系统是通过对Ability调度,结合系统提供的一致性调度契约对Ability进行生命周期管理,从而实现对用户程序的调度。

FA模型的几种类型

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

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

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

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

FA模型的几种类型的生命周期

** PageAbility的生命周期 **

UNINITIALIZED :未初始状态,为临时状态,PageAbility被创建后会由UNINITIALIZED状态进入INITIAL状态。

INITIAL :初始化状态,也表示停止状态,表示当前PageAbility未运行,PageAbility被启动后由INITIAL态进入ACTIVE状态。

INACTIVE :失去焦点状态,表示当前窗口已显示但是无焦点状态。

ACTIVE :前台激活状态,表示当前窗口已显示,并获取焦点。

BACKGROUND :后台状态,表示当前PageAbility退到后台,PageAbility在被销毁后由BACKGROUND状态进入INITIAL状态,或者重新被激活后由BACKGROUND状态进入ACTIVE状态。

%E5%9B%BE%E7%89%871.png

Service Ability的生命周期

接口名 描述
onStart 该方法在创建Service的时候调用,用于Service的初始化。在Service的整个生命周期只会调用一次,调用时传入的Want应为空。
onCommand 在Service创建完成之后调用,该方法在客户端每次启动该Service时都会调用,开发者可以在该方法中做一些调用统计、初始化类的操作。
onConnect 在Ability和Service连接时调用。
onDisconnect 在Ability与绑定的Service断开连接时调用。
onStop 在Service销毁时调用。Service应通过实现此方法来清理任何资源,如关闭线程、注册的侦听器等。

Data Ability的生命周期

接口名 描述
onInitialized 在Ability初始化调用,通过此回调方法执行rdb等初始化操作。
update 更新数据库中的数据。
query 查询数据库中的数据。
delete 删除一条或多条数据。
normalizeUri 对uri进行规范化。一个规范化的uri可以支持跨设备使用、持久化、备份和还原等,当上下文改变时仍然可以引用到相同的数据项。
batchInsert 向数据库中插入多条数据。
denormalizeUri 将一个由normalizeUri生产的规范化uri转换成非规范化的uri。
insert 向数据中插入一条数据。
openFile 打开一个文件。
getFileTypes 获取文件的MIME类型。
getType 获取uri指定数据相匹配的MIME类型。
executeBatch 批量操作数据库中的数据。
call 自定义方法。

Form Ability的生命周期

接口名 描述
onCreate(want: Want): formBindingData.FormBindingData 卡片提供方接收创建卡片的通知接口。
onCastToNormal(formId: string): void 卡片提供方接收临时卡片转常态卡片的通知接口。
onUpdate(formId: string): void 卡片提供方接收更新卡片的通知接口。
onVisibilityChange(newStatus: { [key: string]: number }): void 卡片提供方接收修改可见性的通知接口。
onEvent(formId: string, message: string): void 卡片提供方接收处理卡片事件的通知接口。
onDestroy(formId: string): void 卡片提供方接收销毁卡片的通知接口。
onAcquireFormState?(want: Want): formInfo.FormState 卡片提供方接收查询卡片状态的通知接口。

参考文档:

https://developer.harmonyos.com/cn/docs/documentation/doc-guides/fa-brief-0000001333640861
*附件:HarmonyOSOpenHarmony应用开发-FA模型综述.docx

回帖

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容图片侵权或者其他问题,请联系本站作侵删。 侵权投诉
链接复制成功,分享给好友