[文章]HarmonyOS/OpenHarmony应用开发-FA卡片开发体验

阅读量0
0
0
卡片概述

卡片是一种界面展示形式,可以将应用的重要信息或操作前置到卡片,以达到服务直达,减少体验层级的目的。

卡片常用于嵌入到其他应用(当前只支持系统应用)中作为其界面的一部分显示,并支持拉起页面,发送消息等基础的交互功能。卡片使用方负责显示卡片。

卡片的基本概念:

卡片提供方: 提供卡片显示内容原子化服务,控制卡片的显示内容、控件布局以及控件点击事件。

卡片使用方 :显示卡片内容的宿主应用,控制卡片在宿主中展示的位置。

卡片管理服务: 用于管理系统中所添加卡片的常驻代理服务,包括卡片对象的管理与使用,以及卡片周期性刷新等。

场景介绍

FA卡片开发,即基于FA模型的卡片提供方开发,主要涉及如下功能逻辑:

开发卡片生命周期回调函数LifecycleForm。

创建卡片数据FormBindingData对象。

通过FormProvider更新卡片。

开发卡片页面。

接口说明

LifecycleForm API接口功能介绍

接口名 描述
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 卡片提供方接收查询卡片状态的通知接口。

FormProvider API接口功能介绍

接口名 描述
setFormNextRefreshTime(formId: string, minute: number, callback: AsyncCallback): void; 设置指定卡片的下一次更新时间。
setFormNextRefreshTime(formId: string, minute: number): Promise; 设置指定卡片的下一次更新时间,以promise方式返回。
updateForm(formId: string, formBindingData: FormBindingData, callback: AsyncCallback): void; 更新指定的卡片。
updateForm(formId: string, formBindingData: FormBindingData): Promise; 更新指定的卡片,以promise方式返回。
开发体验:

图片6.png

图片7.png

示例效果:

1.png

*附件:HarmonyOSOpenHarmony应用开发-FA卡片开发体验.docx

示例代码:

https://gitee.com/jltfcloudcn/jump_to/tree/master/FA_Model_TestMuster

参考文档:

https://developer.harmonyos.com/cn/docs/documentation/doc-guides/fa-formability-0000001281200938

回帖

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