干货分享|HarmonyOS核心技术理念
鸿蒙系统通过提供HarmonyOS SDK、IDE和开发者服务,以及一次开发、多端部署,应用可分可合、自由流转和分布式服务等开放能力,让开发者实现一个工程、一套代码即可开发出覆盖多种设备的应用,而且通过操作系统的能力即可实现应用间互操作、跨设备流转等,真正做到应用开发出来即可融入整个生态。为了解决这个问题,HarmonyOS提供了“一次开发,多端部署”的能力,开发者开发多设备应用,只需要一套工程,
在万物智联时代的重要机遇期,HarmonyOS结合移动生态发展的趋势,提出了三大技术理念(见下图):一次开发多端部署、可分可合自由流转、统一生态系统智能。

一、一次开发,多端部署
“一次开发,多端部署”指的是一个工程,一次开发上架,多端按需部署。其目的是支撑开发者高效地开发多种终端设备上的应用。为了实现这一目的,HarmonyOS提供了几个核心能力,包括多端开发环境、多端开发能力以及多端分发机制,如下图所示。

1. 多端开发环境
HUAWEI DevEco Studio是面向全场景多设备的一站式开发平台,支持多端双向预览、分布式调优、分布式调试、多设备模拟、低代码可视化开发等能力,帮助开发者降低成本、提升效率、提高质量。
HUAWEI DevEco Studio提供的核心能力如下图所示。

l 多端工程管理:在创建鸿蒙应用/元服务/模块工程时,支持选择需要适配的设备类型,DevEco Studio会根据选中的设备类型去匹配及检测对应的功能模块。避免不同的Entry模块之间出现支持的设备类型重叠的情况。
l 多端开发辅助:在编码阶段,DevEco Studio提供了一些实时检测机制,以辅助开发者写出高质量的多设备应用。
l 多端双向预览:在HarmonyOS应用的开发阶段,因不同设备的屏幕分辨率、形状、大小等差异,开发者需要在不同设备上查看UI界面显示,确保实现效果与设计目标一致。在传统的开发模式下,开发者需要获取大量不同的真机设备用于测试验证。HUAWEI DevEco Studio提供了多种设备的双向预览能力,支持同时查看UI代码在多个设备上的预览效果,并支持UI代码和预览效果的双向定位修改。
l 多端模拟器:移动应用开发需要使用本地模拟器来进行应用调试,实现快速开发的目的。鸿蒙生态应用需要运行在多种不同类型的设备上,为此DevEco Studio提供了不同类型的设备模拟,支持开发者在多个模拟设备上同时进行开发调试,以降低门槛、节约成本。DevEco Studio在模拟器中预置了Mate、Pura系列机型的模板,同时也支持自定义屏幕参数。另外,为支撑多设备并行调测,DevEco Studio提供了多屏模拟能力,可以在一个模拟器上同时进行最多4种设备的并行调试。
l 多端测试:DevEco Studio针对多设备静态编码检测、运行效果检测提供了Code Linter和应用体检工具两种类型检测工具。
2. 多端开发能力
HarmonyOS应用如需在多个设备上运行,需要适配不同的屏幕尺寸和分辨率、不同的交互方式(如触摸和键盘等)、不同的硬件能力(如内存差异和器件差异等),开发成本较高。因此,多端开发能力的核心目标是降低多设备应用的开发成本。为了实现该目标,HarmonyOS提供了多端UI适配、交互事件归一、设备能力抽象等核心功能,帮助开发者降低开发与维护成本,提升代码复用度。下图所示为HarmonyOS对屏幕进行逻辑抽象。

l 多端UI适配:由于不同设备的屏幕尺寸、分辨率等存在差异,HarmonyOS将对屏幕进行逻辑抽象,包括尺寸和物理像素,并提供丰富的自适应/响应式的布局和视觉能力,方便开发者进行不同屏幕的界面适配。
l 交互事件归一:由于不同设备间的交互方式等存在差异,如触摸、键盘、鼠标、语音、手写笔等,HarmonyOS将不同设备的输入映射成归一交互事件,从而简化开发者适配逻辑。
l 设备能力抽象:由于不同设备间的软、硬件能力等存在差异,如设备是否具备定位能力、是否具备摄像头、是否具备蓝牙功能等,HarmonyOS要对设备能力进行逻辑抽象,并提供接口来查询设备是否支持某一能力,方便开发者进行不同软、硬件能力的功能适配。在HarmonyOS中,使用SystemCapability(简写为 SysCap)定义每个部件为应用开发者提供的系统软、硬件能力。以便应用开发者基于统一的方式访问不同设备的能力。
3. 多端分发机制
如果需要开发在多设备上运行的应用,一般会针对不同类型的设备多次开发并独立上架,因此开发和维护的成本较大。为了解决这个问题,HarmonyOS提供了“一次开发,多端部署”的能力,开发者开发多设备应用,只需要一套工程,一次打包出多个HAP,统一上架,即可根据设备类型按需进行分发,如下图所示。

除了可以开发传统的应用,开发者还可以开发元服务。元服务是一种面向未来的服务提供方式,具有独立入口的、免安装的、可为用户提供一个或多个便捷服务的应用程序形态。HarmonyOS为元服务提供了更多的分发入口,方便用户获取,同时也增加了元服务露出的机会。
二、可分可合,自由流转
元服务是HarmonyOS提供的一种全新的应用形态,具有独立入口。用户可通过单击、碰一碰、扫一扫等方式直接触发,无须显式安装,由程序框架后台静默安装后即可使用,可为用户提供便捷服务。
在传统移动生态下,开发者通常需要开发一个原生应用版本,如果提供小程序给用户,往往需要开发若干个独立的小程序。在HarmonyOS生态下,HarmonyOS原生支持元服务开发,开发者无须维护多套版本,而是通过业务解耦将应用分解为若干元服务独立开发,再按需根据场景组合成复杂应用。
元服务基于HarmonyOS API开发,支持运行在1+8+N设备上,供用户在合适的场景和设备上便捷使用。元服务是支撑可分可合、自由流转的轻量化程序实体,帮助开发者的服务更快触达用户。元服务具备如下特点:
l 触手可及:元服务可以在服务中心发现并使用,同时也可以基于合适场景被主动推荐给用户,例如用户可以在服务中心和小艺建议中发现系统推荐的服务。
l 服务直达:元服务无须安装和卸载,秒开体验,即点即用,即用即走。
l 服务卡片:用户无须打开元服务便可获取服务内重要信息的展示和动态变化,如天气、关键事务备忘、热点新闻列表等。
l 自由流转:元服务支持运行在多设备上并按需跨端迁移,或者多个设备协同起来给用户提供最优的体验。例如手机上未完成的邮件迁移到平板电脑上继续编辑,手机用作文档翻页和批注,配合智慧屏完成分布式办公;又如分布式游戏场景,手机可作为手柄,与智慧屏配合玩游戏,获得新奇的游戏体验。
如下图所示是HarmonyOS打包上架模式。

三、统一生态,系统智能
1. 统一生态
统一生态具有愿景上的意义,打造智能连接,共建智能世界。
从设备角度来说,基于鸿蒙可以开发多种全场景终端设备;从应用角度来说,可以为鸿蒙开发多种应用,运行在全场景设备上,满足智能家居、智慧办公等全场景使用要求。为此鸿蒙系统提供了全套能力来进行保证。
鸿蒙系统通过提供组件化、统一驱动框架、适配多芯片架构等能力,支持开发标准(如手机、平板电脑等)、轻量(如电视、手表等)和小型(如智能门锁等)三类设备,可覆盖各种智能终端。
传统设备之间的互联、互通和互操作是在应用层完成的,技术上没有问题,但在实际中很难形成生态,不同厂家设备间很难互联互通互操作。鸿蒙系统提供统一的分布式组件、模型及互联业务互操作规范等能力和规范,在操作系统层面实现了鸿蒙全场景终端设备的统一互联,彻底解决了设备互联的生态难题。
鸿蒙系统通过提供HarmonyOS SDK、IDE和开发者服务,以及一次开发、多端部署,应用可分可合、自由流转和分布式服务等开放能力,让开发者实现一个工程、一套代码即可开发出覆盖多种设备的应用,而且通过操作系统的能力即可实现应用间互操作、跨设备流转等,真正做到应用开发出来即可融入整个生态。
2. 系统智能
HarmonyOS内置了强大的AI能力,面向HarmonyOS生态应用的开发,通过不同层次的AI能力开放,满足开发者在不同开发场景下的诉求,降低应用的开发门槛,帮助开发者快速实现应用智能化。
l 场景化AI控件:在Speech Kit和Vision Kit中为开发者提供高阶的、场景化的AI解决方案,包括朗读、文档扫描、卡证识别、活体检测、AI字幕、智能荐图、智能填充等。
l 基础AI控件:将AI能力与系统基础控件深度融合,使系统控件具有文字识别、图像分割、实体识别等AI能力,降低开发成本。
l AI基础能力:提供TTS、ASR、OCR等AI基础能力。
l AI子系统:提供高性能低功耗的端侧推理和端侧学习环境,保证芯片能力被高效有序提供,还提供大模型的相关能力。
意图框架提供了HarmonyOS系统级的意图标准体系,通过多维系统感知、大模型等能力构建全局意图范式,实现对用户显性与潜在意图的理解,并及时、准确地将用户需求传递给生态伙伴,从而匹配合时宜的服务,为用户提供多模态、场景化进阶场景体验。
传统的基于大语言模型(LLM)的智能体“可以自主地理解意图、规划决策、执行任务、调用工具,并具有记忆能力”,鸿蒙智能体还可以额外提供“与系统、应用和元服务无缝协作实现复杂任务,形成智能体(Agent)价值网络”。鸿蒙智能体分为两类:
l 系统智能体:鸿蒙系统中有且只有一个系统智能体(即小艺),它可以结合鸿蒙系统的底层能力,为用户提供体系化、可扩展的智能能力;鸿蒙系统资源中的各项能力(感知能力、记忆能力、工具能力等)向系统智能体开放并由其管理。系统智能体像一位私人助理,一直关心、实时在线、适时服务。它站在距离用户最近的位置,代表用户超前思考,为用户带来智能的服务体验。
l 领域智能体:除了系统智能体之外,下一代AI终端中还将存在多个领域智能体。系统智能体和领域智能体相互协作,为用户提供综合性与专业性相结合的智能服务体验。由于当前头部的App厂商拥有丰富的数据、强大的算法和充沛的算力,因此判断大量的领域智能体将首先由App厂商孵化或转型而来。这种与App存在派生与协同的领域智能体,也可以称为“应用智能体”,是鸿蒙生态的重要组成部分。
本文摘自《鸿蒙之光HarmonyOS 6应用开发入门》,具体内容请以书籍为准。
更多推荐

所有评论(0)