HarmonyOS 鸿蒙Next ArkTS语言教程入门学习第37天,服务卡片概述

HarmonyOS 鸿蒙Next ArkTS语言教程入门学习第37天,服务卡片概述

1、ExtensionAbility组件

ExtensionAbility组件是基于特定场景提供的应用组件,以便满足更多的使用场景。

每一个具体场景对应一个ExtensionAbilityType,各类型的ExtensionAbility组件均由相应的系统服务统一管理,

例如InputMethodExtensionAbility组件由输入法管理服务统一管理。当前支持的ExtensionAbility类型有:

  • FormExtensionAbility:FORM类型的ExtensionAbility组件,用于提供服务卡片场景相关能力。
  • WorkSchedulerExtensionAbility:WORK_SCHEDULER类型的ExtensionAbility组件,用于提供延迟任务注册、取消、查询的能力。

2、服务卡片概述

服务卡片(以下简称“卡片”)是一种界面展示形式,可以将应用的重要信息或操作前置到卡片,以达到服务直达、减少体验层级的目的。卡片常用于嵌入到其他应用(当前卡片使用方只支持系统应用,如桌面)中作为其界面显示的一部分,并支持拉起页面、发送消息等基础的交互功能。

3、服务卡片架构

图1 服务卡片架构

卡片的基本概念:

  • 卡片使用方:如上图中的桌面,显示卡片内容的宿主应用,控制卡片在宿主中展示的位置。
    • 应用图标:应用入口图标,点击后可拉起应用进程,图标内容不支持交互。
    • 卡片:具备不同规格大小的界面展示,卡片的内容可以进行交互,如实现按钮进行界面的刷新应用的跳转等。
  • 卡片提供方:包含卡片的应用,提供卡片的显示内容、控件布局以及控件点击处理逻辑。
    • FormExtensionAbility:卡片业务逻辑模块,提供卡片创建、销毁、刷新等生命周期回调。
    • 卡片页面:卡片UI模块,包含页面控件、布局、事件等显示和交互信息。

卡片的常见使用步骤如下。

图2 卡片常见使用步骤

  1. 长按“桌面图标”,弹出操作菜单。
  2. 点击“服务卡片”选项,进入卡片预览界面。
  3. 点击“添加到桌面”按钮,即可在桌面上看到新添加的卡片。

4、服务卡片UI页面开发方式

在Stage模型下,服务卡片的UI页面支持通过AkTSJS两种语言进行开发:

  • 基于声明式范式ArkTS UI开发的卡片,简称ArkTS卡片。
  • 基于类Web范式JS UI开发的卡片,简称JS卡片。

ArkTS卡片与JS卡片具备不同的实现原理及特征,在场景能力上的差异如下表所示。

类别 JS卡片 ArkTS卡片
开发范式 类Web范式 声明式范式
组件能力 支持 支持
布局能力 支持 支持
事件能力 支持 支持
自定义动效 不支持 支持
自定义绘制 不支持 支持
逻辑代码执行(不包含import能力) 不支持 支持

相比于JS卡片,ArkTS卡片在能力和场景方面更加丰富,因此无论开发何种用途的卡片,都推荐使用ArkTS卡片,因为它可以提高开发效率并实现动态化。但如果只需要做静态页面展示的卡片,可以考虑使用JS卡片。


更多关于HarmonyOS 鸿蒙Next ArkTS语言教程入门学习第37天,服务卡片概述的实战教程也可以访问 https://www.itying.com/category-93-b0.html

2 回复

在HarmonyOS鸿蒙Next中,ArkTS语言的服务卡片是一种轻量级的UI组件,用于在设备主屏幕上展示关键信息或提供快捷操作。服务卡片可以动态更新内容,支持用户交互,并且能够根据设备屏幕尺寸自适应布局。

服务卡片的核心概念包括:

  • 卡片提供方(Card Provider):负责生成卡片数据并推送到卡片管理服务。
  • 卡片管理服务(Card Manager):负责卡片的生命周期管理,包括创建、更新、删除等操作。
  • 卡片模板(Card Template):定义了卡片的UI结构和样式,支持多种布局和组件。

在ArkTS中,开发服务卡片通常涉及以下步骤:

  • 定义卡片模板:使用ArkTS的UI组件库(如@ohos.arkui)设计卡片的布局和样式。
  • 实现卡片提供方:编写逻辑代码,生成卡片数据并推送到卡片管理服务。
  • 注册卡片:在应用的配置文件中声明卡片信息,包括卡片ID、模板路径等。
  • 处理卡片交互:为卡片添加事件监听器,响应用户操作。

服务卡片支持多种数据源,包括本地数据、网络数据和系统服务数据。开发者可以通过ArkTS的API访问这些数据,并实时更新卡片内容。

服务卡片的生命周期包括创建、更新、销毁等阶段,开发者可以通过重写相关回调函数来处理这些事件。例如,在卡片创建时初始化数据,在卡片销毁时释放资源。

服务卡片的布局和样式可以通过ArkTS的UI组件库进行定制,支持多种布局方式(如线性布局、网格布局)和组件(如文本、图片、按钮)。开发者可以根据需求设计卡片的UI,并通过样式表控制卡片的外观。

服务卡片的开发文档和示例代码可以在HarmonyOS开发者官网找到,开发者可以参考这些资源进行学习和实践。

更多关于HarmonyOS 鸿蒙Next ArkTS语言教程入门学习第37天,服务卡片概述的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


在第37天的HarmonyOS鸿蒙Next ArkTS语言教程中,您将学习到服务卡片(Service Widget)的概述。服务卡片是鸿蒙系统中的一种轻量级UI组件,用于在主屏幕或应用内展示关键信息或提供快捷操作。通过ArkTS语言,您可以定义卡片的布局、数据绑定和交互逻辑,实现动态内容更新和用户交互。服务卡片支持多种尺寸和样式,能够提升用户体验和应用的可访问性。

回到顶部