HarmonyOS 4.0 技术介绍:

鸿蒙OS 4.0(HarmonyOS 4.0)是华为推出的一款全场景、分布式操作系统。鸿蒙4.0是其最新版本,于2023年8月4日发布,主要包括全新UI设计、多设备协同、语音交互等功能。它旨在为不同类型的智能设备提供统一的操作系统,从智能手机和平板电脑到智能家居设备和汽车等,都可以使用同一个操作系统。鸿蒙OS使用分布式技术,可以在(手机、平板、智能穿戴、智慧屏、车机、PC、智能音箱、耳机、AR/VR 眼镜等多种不同终端设备)实现协同操作和资源共享,提升设备间的互联互通能力。此外,鸿蒙OS还支持多种开发语言和技术,为开发者提供了更多的灵活性和选择余地。

HarmonyOS三大特征:

1.实现硬件互助,资源共享。

能够将生活场景中的各类终端进行能力整合,形成一个“超级虚拟终端”,可以实现不同的终端设备之间的快速连接、能力互助、资源共享,匹配合适的设备,提供流畅的全场景体验。能够让多设备通信能力共享,让手机、手表、电脑等通过NFC功能共享转移任务。

2. 面向开发者,实现一次开发,多端部署。

对开发者来说,HarmonyoS 采用多种分布式技术,使应用开发与不同终端设备的形态差异无关,从而让开发者能够聚焦上层业务逻辑,更加便捷、高效地开发应用。



分布式技术:是一种系统组成模式,它把分布在不同地址的计算机通过通信网络互联在一起,组成一个计算机群,协同完成各种计算任务。

减少开发成本和工作量。鸿蒙系统具备分布式架构的特点,可以支持全系列设备,包括智能手机、平板电脑、智能穿戴、智能家居等,开发者无需针对不同的设备进行独立开发,只需要一套代码就可以同时适配多种设备。

提升应用性能和稳定性。鸿蒙操作系统采用了微内核架构,具有高效的资源管理和隔离机制,可以有效提升应用的性能和稳定性。

实现商业化运营。鸿蒙还为开发者提供了多种变现方式,包括应用内购买、广告投放等,帮助开发者实现商业化运营

3.一套操作系统可以满足不同能力的设备需求,实现统一OS,弹性部署。

“对设备开发者来说,Harmonyos采用了组件化的设计方案,可根据设备的资源能力和业务特征灵活裁剪,满足不同形态终端设备对操作系统的要求。“

Harmonyos提供了支持多种开发语言的 API,供开发者进行应用开发。支持的开发语言包括ArkTS(华为官方推荐-方舟)、JS(JavaScript)、C/C++ 、Java。

HarmonyOS技术架构:

鸿蒙系统遵从分层设计,由下至上为:内核层,系统服务层,框架层,应用层。




系统功能按照“系统> 子系统 > 功能/模块”逐级展开,在多设备部署下,支持开发者根据实际需求裁剪非必要的子系统/模块。

HarmonyOS技术框架视图如下:



内核层



内核层包括内核子系统和驱动子系统。

内核层的内核子系统提供各种各样的内核给各种设备进行切换,从而与系统适配。多个内核子系统对外提供了API抽象(叫做KAL)接口,使得我们能够在手机,家电设备或者是非常小的单片机上安装HarmonyOS操作系统

Linux内核供应标准设备提供接口(eg:手机)。

liteOS是为内存很小,无需大内核的设备提供接口(eg:家电,汽车设备)。

驱动子系统:为所有的设备厂商提供HDF(硬件驱动框架)—硬件厂商基于HDF这个驱动框架开发出属于我们这个芯片或设备的驱动,就可以直接应用到HarmonyOS操作系统中。所有的厂商都有一个对厂商提供驱动的框架。

框架层和系统服务层



框架层和系统服务层的作用:由HarmonyOS为所有的程序员提供API的调用以及SDK的调用,从而做到系列化的密度管理,插件调用。

eg:通过调用UI框架设计用户界面

框架层和系统服务层的作用:由HarmonyOS为所有的程序员提供API的调用以及SDK的调用,从而做到系列化的密度管理,插件调用。

eg:通过调用UI框架设计用户界面

应用层



应用层包括系统应用和第三方非系统应用。(eg:微信就是应用层的)




HarmonyOS技术特性:

1.硬件互助,资源共享

多种设备之间能够实现硬件互助、资源共享,依赖的关键技术(5方面)包括:

分布式软总线、分布式设备虚拟化、分布式数据管理、分布式任务调度等。

(1)分布式软总线 - 万物互联接口

分布式软总线:为提供统一的设备之间连接通信的API

分布式软总线示意图如下:



典型应用场景:

(a)智能家居场景:



(b)多屏联动课堂:



(2)分布式设备虚拟化 - 集优于一体

分布式设备虚拟化平台可以实现不同设备的资源融合、设备管理、数据处理,多种设

备共同形成一个超级虚拟终端。针对不同类型的任务,为用户匹配并选择能力合适的执行

硬件,让业务连续地在不同设备间流转,充分发挥不同设备的能力优势,如显示能力、摄

像能力、音频能力、交互能力以及传感器能力等。

分布式设备虚拟化示意图如下:



典型应用场景:

(a)视频通话场景:在做家务时接听视频电话,可以将手机与智慧屏连接,并将智慧屏的
屏幕、摄像头与音箱虚拟化为本地资源,替代手机自身的屏幕、摄像头、听筒与扬声
器,实现一边做家务、一边通过智慧屏和音箱来视频通话。



(b) 游戏场景:在智慧屏上玩游戏时,可以将手机虚拟化为遥控器,借助手机的重力传感
器、加速度传感器、触控能力,为玩家提供更便捷、更流畅的游戏体验。



(3)分布式数据管理 - 数据共享

分布式数据管理基于分布式软总线的能力,实现应用程序数据和用户数据的分布式管
理。

分布式数据管理示意图如下:



协同办公场景:

将设计文档直接投屏到智慧屏,在智慧屏进行文档的修改操作可以在手机上同步显示。





(4)分布式任务调度 - 跨设备使用应用

分布式任务调度基于分布式软总线、分布式数据管理、分布式 Profile 等技术特性,

构建统一的分布式服务管理(发现、同步、注册、调用)机制,支持对跨设备的应用进行

远程启动、远程调用、远程连接以及迁移等操作,能够根据不同设备的能力、位置、业务

运行状态、资源使用情况,以及用户的习惯和意图,选择合适的设备运行分布式任务。

下图以应用迁移为例,简要地展示了分布式任务调度能力。



典型应用场景举例:

导航场景:

(a)如果用户驾车出行,

上车前,在手机上规划好导航路线;

上车后,导航自动迁移到车机和车载音箱;

下车后,导航自动迁移回手机。

(b)如果用户骑车出行,在手机上规划好导航路线,骑行时手表可以接续导航。

外卖场景:

在手机上点外卖后,可以将订单信息迁移到手表上,随时查看外卖的配送

状态。

(5)分布式连接能力

分布式连接能力提供了智能终端底层和应用层的连接能力,通过 USB 接口共享

终端部分硬件资源和软件能力。

开发者基于分布式连接能力,可以开发相应形态的生态产品为消费者提供更丰富的连接体验。

分布式连接能力示意图如下:




2.一次开发,多端部署

HarmonyOS 提供了用户程序框架、Ability 框架以及 UI 框架(使用栅格化布局),支持应用开发过程中多终端的业务逻辑和界面逻辑进行复用,能够实现应用的一次开发、多端部署,提升了跨设备应用的开发效率。- 这些框架可以让我们开发好应用程序App以后在多种设备上进行部署。开发好的APP可以在不同设备进行安装使用

栅格化布局:开发出来的网页可以自动适应横竖屏页面

一次开发、多端部署示意图见下图




3.统一OS,弹性部署

HarmonyOS 通过组件化和小型化等设计方法,支持多种终端设备按需弹性部署,能够适配不同类别的硬件资源和功能需求。

 支持各组件的选择(组件可有可无):根据硬件的形态和需求,可以选择所需的组件。

 支持组件内功能集的配置(组件可大可小):根据硬件的资源情况和功能需求,可以

选择配置组件中的功能集。例如,选择配置图形框架组件中的部分控件。

支持组件间依赖的关联(平台可大可小):根据编译链关系,可以自动生成组件化的

依赖关系。例如,选择图形框架组件,将会自动选择依赖的图形引擎组件等。

———————————————————————————-





都是我在网上花钱购买的优质学习资源

因篇幅有限,仅展示部分资料,







上面就是我为大家整理出来的一份鸿蒙工程师发展方向知识架构体系图。希望大家能照着这个体系,完成这样一个体系的构建。可以说,这个过程会很有挑战,但只要突破了瓶颈。以后的职业生涯就轻松很多。正所谓万事开头难,只要迈出了第一步,你就已经成功了一半,古人说的好“不积跬步,无以至千里。”等到完成之后再回顾这一段路程的时候,你肯定会感慨良多。

如果你不想再体验一次学习时找不到资料,没人解答问题,坚持几天便放弃的感受的话,在这里我给大家分享一些鸿蒙4.0最新的学习资源,希望能给你前进的路上带来帮助。







包括,鸿蒙开发学习路线图,50多天的视频教程、16个突击实战项目,30余个鸿蒙开发用软件,37份开发文档,70个鸿蒙开发相关问题,40篇软件开发经验级文章分享,还有2024鸿蒙开发面试宝典,还有软件开发求职的各类精选简历。因篇幅有限,仅展示部分资料,需要下方二维码即可前往获取


加油吧,鸿蒙人!遇到难题时,只有两成的人去解决问题,另外八成的人选择逃避。于是那两成的人成为羡慕或怀疑的对象


与其临渊羡鱼,不如退而结网~