【HarmonyOS Next之旅】DevEco Studio使用指南(六)

目录

[1 -> 在模块中添加Ability](#1 -> 在模块中添加Ability)

[1.1 -> Stage模型添加UIAbility](#1.1 -> Stage模型添加UIAbility)

[1.1.1 -> 在模块中添加UIAbility](#1.1.1 -> 在模块中添加UIAbility)

[1.1.2 -> 在模块中添加Extension Ability](#1.1.2 -> 在模块中添加Extension Ability)

[2 -> 创建服务卡片](#2 -> 创建服务卡片)

[2.1 -> 概述](#2.1 -> 概述)

[2.2 -> 使用约束](#2.2 -> 使用约束)

[2.3 -> 创建服务卡片](#2.3 -> 创建服务卡片)

[2.4 -> 创建动态/静态卡片](#2.4 -> 创建动态/静态卡片)

[2.5 -> 预览服务卡片](#2.5 -> 预览服务卡片)


1 -> 在模块中添加Ability

Ability是应用/元服务所具备的能力的抽象,一个Module可以包含一个或多个Ability。应用/元服务先后提供了两种应用模型:

  • FA(Feature Ability)模型: API 7开始支持的模型,已经不再主推。

  • Stage模型:HarmonyOS 3.1 Developer Preview版本开始新增的模型,是目前主推且会长期演进的模型。在该模型中,由于提供了AbilityStage、WindowStage等类作为应用组件和Window窗口的"舞台",因此称这种应用模型为Stage模型。

    Stage模型包含两种Ability组件类型:

    • UIAbility组件:包含UI界面,提供展示UI的能力,主要用于和用户交互。
    • ExtensionAbility组件:提供特定场景的扩展能力,满足更多的使用场景。

1.1 -> Stage模型添加UIAbility

1.1.1 -> 在模块中添加UIAbility

选中对应的模块,单击鼠标右键,选择New > Ability

1. 设置Ability名称,选择是否在设备主屏幕上显示该功能的启动图标,单击Finish完成Ability创建。

1.1.2 -> 在模块中添加Extension Ability

  1. 在工程中选中对应的模块,单击鼠标右键,选择New > Extension Ability,选择不同的场景类型 。当前仅Application工程支持创建Extension Ability。
  • EmbeddedUIExtensionAbility:提供了跨进程界面嵌入的能力。
  • Backup Ability:用于应用接入数据备份恢复的能力。
  • WorkScheduler:用于提供延迟任务回调实现的能力。
  • RemoteNotificationAbility:用于提供获取场景化消息数据和生命周期销毁的回调的通知能力。

2. 设置Ability名称,单击Finish完成Extension Ability创建。

2 -> 创建服务卡片

2.1 -> 概述

服务卡片可将元服务/应用的重要信息以卡片的形式展示在桌面,用户可通过快捷手势使用卡片,通过轻量交互行为实现服务直达、减少层级跳转的目的。

不同的SDK版本提供的卡片模板不同:

  • 当前提供如下卡片模板:

|-------------------------------------|-----------------------|--------------|--------------------------------------------------------------------------------------|
| 模板名称 | 支持的设备 | 支持的开发语言 | 模板描述 |
| Hello World | Phone、Tablet、2in1 | ArkTS、JS | HelloWorld卡片,用于高效直观地构建UI。当前Hello World卡片模板支持使用6*4尺寸。 |
| Image With Information(图文卡片模板) | Phone、Tablet、2in1 | ArkTS、JS | 图文卡片模板主要在于展现图片和一定数量文本的搭配,在这种布局下,图片和文本属于同等重要的信息。在不同尺寸下,图片大小和文本数量会发生一定变化,用于凸显关键信息。 |
| Immersive Information(沉浸图文卡片模板) | Phone、Tablet、2in1 | ArkTS、JS | 沉浸式卡片的装饰性较强,能够较好的提升卡片品质感并起到装饰桌面的作用,合理的去布局信息与背景图片之间的空间比例,可以提升用户的个性化使用体验。 |
| List | Phone、Tablet、2in1 | ArkTS | 提供基本的列表功能。当前仅动态卡片支持在API 11及以上工程创建List卡片模板。 |
| Control Button | Phone、Tablet、2in1 | ArkTS | 操控类型的卡片,展示文本信息与按钮操作,点击按钮响应事件。当前仅静态卡片支持API 11及以上工程创建Control Button卡片模板。 |
| Control Search | Phone、Tablet、2in1 | ArkTS | 操控类型的卡片,适用于搜索场景。当前仅静态卡片支持API 11及以上工程创建Control Search卡片模板。 |

2.2 -> 使用约束

  • 每个module最多可以配置16张服务卡片。
  • 卡片不支持调试。
  • 元服务不支持创建JS卡片。

2.3 -> 创建服务卡片

创建一个工程后,可以通过如下方法进行创建服务卡片:

1. 创建服务卡片包括如下两种方式:

  • 选择模块(如entry模块)下的任意文件,单击菜单栏File > New > Service Widget创建服务卡片。
  • 选择模块(如entry模块)下的任意文件,单击右键 > New > Service Widget创建服务卡片。

说明

  • API 11 Stage模型及以上,创建元服务工程或在元服务工程中创建模块时,不再默认创建服务卡片和EntryCard。
  • API 10及以上Stage模型的工程中,在Service Widget菜单可直接选择创建动态/静态卡片。
  1. Choose a Template for Your Service Widget 界面中,选择卡片模板,单击Next
  1. Configure Your Service Widget界面中,配置卡片的基本信息,包括:
  • Service widget name:卡片的名称,在同一个应用/元服务中,卡片名称不能重复,且只能包含大小写字母、数字和下划线。
  • Display name:卡片预览面板上显示的卡片名称。仅API 11 及以上Stage工程支持配置该字段。
  • Description:卡片的描述信息。
  • **Language:**界面开发语言,可选择创建ArkTS/JS卡片。
  • Support dimension:选择卡片的规格。部分卡片支持同时设置多种规格。首次创建服务卡片时,将默认生成一个EntryCard目录,用于存放卡片快照。
  • Default dimension:在下拉框中可选择默认的卡片。
  • **Ability name:**选择一个挂靠服务卡片的Form Ability,或者创建一个新的Form Ability。
  • **Module name:**卡片所属的模块。
  1. 单击Finish完成卡片的创建。创建完成后,工具会自动创建出服务卡片的布局文件,并在form_config.json文件中写入服务卡片的属性字段。

5. 卡片创建完成后,请根据开发指导,完成服务卡片的开发。

2.4 -> 创建动态/静态卡片

DevEco Studio支持创建静态/动态卡片。动态卡片支持自定义交互、动效、滑动等功能,功能丰富但内存占用较大;静态卡片内存占用较小,有助实现整机内存优化,可实现静态信息展示、刷新和点击跳转。

说明

当前仅API 10及以上Stage模型支持开发静态卡片。

创建服务卡片后,在form_config.json 文件中,可修改isDynamic 参数配置。isDynamic置空或为"true",则该卡片为动态卡片;若赋值为"false",则该卡片为静态卡片。

2.5 -> 预览服务卡片

在开发服务卡片过程中,支持对卡片进行实时预览。服务卡片通过ArkTS、JS文件进行布局设计,在开发过程中,可以对布局文件进行实时预览,只要在布局文件中保存了修改的源代码,在预览器中就可以实时查看布局效果。在Phone和Tablet服务卡片的预览效果中,每个尺寸的服务卡片提供3种场景的预览效果,分别为极窄(Minimum)、默认(Default)、极宽(Maximum),开发者应确保三种尺寸的显示效果均正常,以便适应不同屏幕尺寸的设备。


感谢各位大佬支持!!!

互三啦!!!

相关推荐
威哥爱编程1 小时前
HarmonyOS NEXT 基于原生能力获取视频缩略图
华为·harmonyos·arkts
威哥爱编程1 小时前
HarmonyOS NEXT 实现拖动卡片背景模糊效果
华为·harmonyos·arkts
别说我什么都不会2 小时前
OpenHarmony深度解读之分布式软总线:auth_interface.c文件部分源码解析
分布式·嵌入式·harmonyos
二流小码农2 小时前
鸿蒙开发:正则中的match和matchAll
android·ios·harmonyos
别说我什么都不会4 小时前
OpenHarmony源码分析之分布式软总线:authmanager/auth_conn.c
分布式·物联网·harmonyos
华研前沿标杆游学4 小时前
华为总部-华为东莞松山湖基地参观游学攻略
华为
娅娅梨5 小时前
ArkUI-List组件
华为·list·harmonyos·arkts·arkui
苏啵曼5 小时前
鸿蒙如何显示临时数据?在预览(@Preview)时
android·前端·harmonyos
Bruce_Liuxiaowei5 小时前
HarmonyOS Next~鸿蒙图形开发技术解析:AREngine与ArkGraphics 2D的核心能力与应用实践
华为·harmonyos
资讯新鲜事6 小时前
华为终端将全面进入鸿蒙时代
华为·harmonyos