在刚发布不久的HarmonyOS 2版本的新系统中,【服务卡片】成为一大亮点:

  1. 全新的HarmonyOS桌面简洁有序,上滑App生成服务卡片,在桌面即可呈现更丰富的信息。
  2. 卡片内容实时更新,只需一瞥即可获取所需信息,省去了打开App的时间。
  3. 卡片可大可小、可藏可显,还能个性化定制,让每个桌面独一无二。

下面就让我们一起去领略服务卡片的风采!

文章目录

  • 一、HarmonyOS概述
    • 1. 三大特征
    • 2. 技术架构
  • 二、服务卡片的含义
  • 三、服务卡片的运行机制

一、HarmonyOS概述

HarmonyOS是一款面向万物互联时代的、全新的分布式操作系统。

在传统的单设备系统能力基础上,HarmonyOS提出了基于同一套系统能力、适配多种终端形态的分布式理念,能够支持手机、平板、智能穿戴、智慧屏、车机等多种终端设备,提供全场景(移动办公、运动健康、社交通信、媒体娱乐等)业务能力。

1. 三大特征

  1. 搭载该操作系统的设备在系统层面融为一体、形成超级终端,让设备的硬件能力可以弹性扩展,实现设备之间硬件互助,资源共享。
    对消费者而言,HarmonyOS能够将生活场景中的各类终端进行能力整合,实现不同终端设备之间的快速连接、能力互助、资源共享,匹配合适的设备、提供流畅的全场景体验。
  2. 面向开发者,实现一次开发,多端部署。
    对应用开发者而言,HarmonyOS采用了多种分布式技术,使应用开发与不同终端设备的形态差异无关,从而让开发者能够聚焦上层业务逻辑,更加便捷、高效地开发应用。
  3. 一套操作系统可以满足不同能力的设备需求,实现统一OS,弹性部署。
    对设备开发者而言,HarmonyOS采用了组件化的设计方案,可根据设备的资源能力和业务特征灵活裁剪,满足不同形态终端设备对操作系统的要求。

HarmonyOS提供了支持多种开发语言的API,供开发者进行应用开发。支持的开发语言包括Java、XML(Extensible Markup Language)、C/C++ 、 JS(JavaScript)、CSS(Cascading Style Sheets)和HML(HarmonyOS Markup Language)。

2. 技术架构

HarmonyOS整体遵从分层设计,从下向上依次为:内核层、系统服务层、框架层和应用层。系统功能按照“系统 > 子系统 > 功能/模块”逐级展开,在多设备部署场景下,支持根据实际需求裁剪某些非必要的子系统或功能/模块。HarmonyOS技术架构如下所示:

内核层

  • 内核子系统:HarmonyOS采用多内核设计,支持针对不同资源受限设备选用适合的OS内核。内核抽象层(KAL,Kernel
    Abstract Layer)通过屏蔽多内核差异,对上层提供基础的内核能力,包括进程/线程管理、内存管理、文件系统、网络管理和外设管理等。
  • 驱动子系统:硬件驱动框架(HDF)是HarmonyOS硬件生态开放的基础,提供统一外设访问能力和驱动开发、管理框架。

系统服务层
系统服务层是HarmonyOS的核心能力集合,通过框架层对应用程序提供服务。该层包含以下几个部分:

  • 系统基本能力子系统集:为分布式应用在HarmonyOS多设备上的运行、调度、迁移等操作提供了基础能力,由分布式软总线、分布式数据管理、分布式任务调度、方舟多语言运行时、公共基础库、多模输入、图形、安全、AI等子系统组成。其中,方舟运行时提供了C/C++/JS多语言运行时和基础的系统类库,也为使用方舟编译器静态化的Java程序(即应用程序或框架层中使用Java语言开发的部分)提供运行时。
  • 基础软件服务子系统集:为HarmonyOS提供公共的、通用的软件服务,由事件通知、电话、多媒体、DFX(Design For X)、MSDP&DV等子系统组成。
  • 增强软件服务子系统集:为HarmonyOS提供针对不同设备的、差异化的能力增强型软件服务,由智慧屏专有业务、穿戴专有业务、IoT专有业务等子系统组成。
  • 硬件服务子系统集:为HarmonyOS提供硬件服务,由位置服务、生物特征识别、穿戴专有硬件服务、IoT专有硬件服务等子系统组成。

根据不同设备形态的部署环境,基础软件服务子系统集、增强软件服务子系统集、硬件服务子系统集内部可以按子系统粒度裁剪,每个子系统内部又可以按功能粒度裁剪。

框架层

框架层为HarmonyOS应用开发提供了Java/C/C++/JS等多语言的用户程序框架和Ability框架,两种UI框架(包括适用于Java语言的Java UI框架、适用于JS语言的JS UI框架),以及各种软硬件服务对外开放的多语言框架API。根据系统的组件化裁剪程度,HarmonyOS设备支持的API也会有所不同。

应用层

应用层包括系统应用和第三方非系统应用。HarmonyOS的应用由一个或多个FA(Feature Ability)或PA(Particle Ability)组成。其中,FA有UI界面,提供与用户交互的能力;而PA无UI界面,提供后台运行任务的能力以及统一的数据访问抽象。FA在进行用户交互时所需的后台数据访问也需要由对应的PA提供支撑。基于FA/PA开发的应用,能够实现特定的业务功能,支持跨设备调度与分发,为用户提供一致、高效的应用体验。

二、服务卡片的含义

服务卡片(以下简称“卡片”)是FA的一种界面展示形式,将FA的重要信息或操作直接放置到卡片中,用户通过直接操作卡片就可以达到应用的使用体验,这样做大大减少了应用的使用层级性。

卡片常用于嵌入到其他应用中作为其界面的一部分显示(也可以使用原子化服务将应用保存到服务中心中,这种方式不需要安装应用),并支持拉起页面,发送消息等基础的交互功能。

FA示例如下图所示。

为了开发者能够便于理解,官方将服务卡片分为三方面:

卡片使用方
显示卡片内容的宿主应用,控制卡片在宿主中展示的位置。
卡片管理服务
用于管理系统中所添加卡片的常驻代理服务,包括卡片对象的管理与使用,以及卡片周期性刷新等。
卡片提供方
提供卡片显示内容的HarmonyOS应用或原子化服务,控制卡片的显示内容、控件布局以及控件点击事件
ps: 卡片使用方和提供方不要求常驻运行,在需要添加/删除/请求更新卡片时,卡片管理服务会拉起卡片提供方获取卡片信息。

以相机的服务卡片为例,只需要长按应用图标,然后选择服务卡片,再从三款服务卡片中选择你喜欢的一款添加到桌面即可,操作非常简单。

三、服务卡片的运行机制


卡片管理服务包含以下模块:

  • 周期性刷新:在卡片添加后,根据卡片的刷新策略启动定时任务周期性触发卡片的刷新。
  • 卡片缓存管理:在卡片添加到卡片管理服务后,对卡片的视图信息进行缓存,以便下次获取卡片时可以直接返回缓存数据,降低时延。
  • 卡片生命周期管理:对于卡片切换到后台或者被遮挡时,暂停卡片的刷新;以及卡片的升级/卸载场景下对卡片数据的更新和清理。
  • 卡片使用方对象管理:对卡片使用方的RPC对象进行管理,用于使用方请求进行校验以及对卡片更新后的回调处理。
  • 通信适配层:负责与卡片使用方和提供方进行RPC通信。

卡片提供方包含以下模块:

  • 卡片服务:由卡片提供方开发者实现,开发者实现onCreateForm、onUpdateForm和onDeleteForm处理创建卡片、更新卡片以及删除卡片等请求,提供相应的卡片服务。
  • 卡片提供方实例管理模块:由卡片提供方开发者实现,负责对卡片管理服务分配的卡片实例进行持久化管理。
  • 通信适配层:由HarmonyOS SDK提供,负责与卡片管理服务通信,用于将卡片的更新数据主动推送到卡片管理服务。

以上就是服务卡片的全部内容了,下面就可以开始用HUAWEI DevEco Studio来开发服务卡片了。


本文正在参与“有奖征文 | HarmonyOS 征文大赛”活动,活动链接为:https://marketing.csdn.net/p/ad3879b53f4b8b31db27382b5fc65bbc


HarmonyOS 实战——服务卡片初探索相关推荐

  1. 我的HarmonyOS实战——鸿蒙系统初定义

    [本文正在参与"有奖征文 | HarmonyOS征文大赛" ]活动链接 鸿蒙系统介绍 1 官方定义 鸿蒙是一个全场景,面向未来的操作系统. 解释: 鸿蒙并不是一个单纯的手机操作系统 ...

  2. 我的HarmonyOS实战 — 一篇文章讲明白什么是鸿蒙2.0服务卡片

    目录 引言 正文 1. 什么服务卡片? 2. 服务卡片如何设置? 3. 如何取消服务卡片? 4. 服务卡片的设计探索 4.1 创造性的上滑操作 4.2 服务卡片的视觉展示 5. 服务卡片提交流程 6. ...

  3. HarmonyOS实战—原子化服务初尝试

    目录 原子化服务初尝试 什么是原子化服务 原子化服务的优点 创建原子化服务项目 运行原子化服务项目 目录结构分析 原子化服务初尝试 什么是原子化服务 原子化服务是HarmonyOS提供的一种面向未来的 ...

  4. HarmonyOS实战—卡片的样式设计

    目录 HarmonyOS实战 HarmonyOS卡片样式设计 卡片的布局文件 自定义2*4的卡片布局 HarmonyOS实战 HarmonyOS卡片样式设计 从鸿蒙手机的左下角屏幕向上滑动,就能打开我 ...

  5. HarmonyOS之深入解析服务卡片的使用

    一.概述 ① 基本概念 服务卡片(以下简称"卡片")是 FA 的一种界面展示形式,将 FA 的重要信息或操作前置到卡片,以达到服务直达,减少体验层级的目的. 卡片常用于嵌入到其他应 ...

  6. HarmonyOS实战—可编辑的卡片交互

    目录 HarmonyOS实战 前言 何为卡片编辑功能? 定义编辑界面 界面的交互逻辑 界面的布局 HarmonyOS实战 前言 在前面的天气卡片设计中,我们设计了一个天气类卡片在桌面进行7日天气的直观 ...

  7. 一文读懂HarmonyOS服务卡片怎么换肤

    作者:zhenyu,华为软件开发工程师 关注HarmonyOS的小伙伴肯定对服务卡片已经很熟悉了.服务卡片(也简称为"卡片")是FA(FeatureAbility,元服务)的一种界 ...

  8. HarmonyOS实战—亮眼的原子化服务体验

     ##[本文正在参与"有奖征文|HarmoneyOS征文大赛"活动] 他来了他来了,他脚踏祥云走来了. 就像是一声初春的惊雷,响彻在华夏大地,预示着一个崭新的国产化的时代的到来. ...

  9. HarmonyOS服务卡片——残奥会卡片

    引言 2021年7月23日,东京奥运会开幕,中国国歌响彻东京,最终拿下38枚金牌.88枚奖牌.         2021年8月24日,东京残奥会开幕,中国残疾运动员出征东京,精彩正在继续- 需求分析 ...

最新文章

  1. IC/FPGA笔试题分析(六)用16bit加法器IP核实现8bit乘法运算(文末彩蛋)
  2. 深究AngularJS——校验(非form表单)
  3. CUDA Libraries简介
  4. taro 小程序转h5之后报错_记录微信小程序转Taro中遇到的问题
  5. subList生成的列表和原列表的对比
  6. hdoj2553(N皇后问题)
  7. Atitit。Cas机制 软件开发 编程语言 无锁机制 java c# php
  8. 对象输出流 ObjectOutputStream java
  9. IPC--进程间通信五(信号)
  10. java的Teacher类_java类的继承 - osc_tauwfamo的个人空间 - OSCHINA - 中文开源技术交流社区...
  11. Linux定时任务cron及部分Linux命令
  12. vue-cli2.0webpack的理解
  13. zzulioj1001C语言答案,ZZULIOJ
  14. 明星危机公关应该怎么做?
  15. 【JavaSE系列】 第九话 —— 多态那些事儿
  16. paddlepaddle本地环境配置
  17. 助力假发线上销售 帕克西3D发型虚拟试戴接入电商平台使用
  18. linux++查找隐藏文件,使用find命令查找Linux中的隐藏文件的方法
  19. Bean 的生命周期
  20. scanf与scanf_s区别

热门文章

  1. 1000以内的回文数_杭城有学校带学生玩扑克、数糖果... “云课堂”下的数学很有趣!这些数学游戏,居家玩起来~...
  2. es6 队列_快速学习ES6(下)
  3. 平年用c语言的计算方式,C语言平年闰年问题
  4. Hadoop核心架构(1)
  5. SQL连接查询_ INNER JOIN
  6. Jmeter远程启动负载机
  7. 《Java技术》第七次作业计科1501赵健宇
  8. drupal_prepare_form 大致是如何工作的 ?
  9. 8位深, 16位深,24位深,32位深图片显示原理及对比
  10. windows搭建yolo环境