HarmonyOS用户程序的开发本质上就是开发Ability。HarmonyOS系统是通过对Ability调度,结合系统提供的一致性调度契约对Ability进行生命周期管理,从而实现对用户程序的调度。
PageAbility:具备ArkUI实现的Ability,是用户具体可见并可以交互的Ability实例。
ServiceAbility:是Ability一种,但是没有UI,提供其他Ability调用自定义的服务,在后台运行。
DataAbility:是没有UI的Ability,提供其他Ability进行数据的增删查服务,在后台运行。
FormAbility:是卡片Ability,是一种界面展示形式。
UNINITIALIZED :未初始状态,为临时状态,PageAbility被创建后会由UNINITIALIZED状态进入INITIAL状态。
INITIAL :初始化状态,也表示停止状态,表示当前PageAbility未运行,PageAbility被启动后由INITIAL态进入ACTIVE状态。
INACTIVE :失去焦点状态,表示当前窗口已显示但是无焦点状态。
ACTIVE :前台激活状态,表示当前窗口已显示,并获取焦点。
BACKGROUND :后台状态,表示当前PageAbility退到后台,PageAbility在被销毁后由BACKGROUND状态进入INITIAL状态,或者重新被激活后由BACKGROUND状态进入ACTIVE状态。
接口名 | 描述 |
---|---|
onStart | 该方法在创建Service的时候调用,用于Service的初始化。在Service的整个生命周期只会调用一次,调用时传入的Want应为空。 |
onCommand | 在Service创建完成之后调用,该方法在客户端每次启动该Service时都会调用,开发者可以在该方法中做一些调用统计、初始化类的操作。 |
onConnect | 在Ability和Service连接时调用。 |
onDisconnect | 在Ability与绑定的Service断开连接时调用。 |
onStop | 在Service销毁时调用。Service应通过实现此方法来清理任何资源,如关闭线程、注册的侦听器等。 |
接口名 | 描述 |
---|---|
onInitialized | 在Ability初始化调用,通过此回调方法执行rdb等初始化操作。 |
update | 更新数据库中的数据。 |
query | 查询数据库中的数据。 |
delete | 删除一条或多条数据。 |
normalizeUri | 对uri进行规范化。一个规范化的uri可以支持跨设备使用、持久化、备份和还原等,当上下文改变时仍然可以引用到相同的数据项。 |
batchInsert | 向数据库中插入多条数据。 |
denormalizeUri | 将一个由normalizeUri生产的规范化uri转换成非规范化的uri。 |
insert | 向数据中插入一条数据。 |
openFile | 打开一个文件。 |
getFileTypes | 获取文件的MIME类型。 |
getType | 获取uri指定数据相匹配的MIME类型。 |
executeBatch | 批量操作数据库中的数据。 |
call | 自定义方法。 |
接口名 | 描述 |
---|---|
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