【华为鸿蒙系统学习】- HarmonyOS4.0开发|自学篇
作者:mmseoamin日期:2023-12-14

【华为鸿蒙系统学习】- HarmonyOS4.0开发|自学篇,第1张

🌈个人主页: Aileen_0v0

🔥热门专栏: 华为鸿蒙系统学习|计算机网络|数据结构与算法

💫个人格言:"没有罗马,那就自己创造罗马~"


【华为鸿蒙系统学习】- HarmonyOS4.0开发|自学篇,第2张

目录

HarmonyOS 4.0 技术介绍:

HarmonyOS三大特征:

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

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

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

HarmonyOS技术架构:

内核层

框架层和系统服务层

应用层

HarmonyOS技术特性:

1.硬件互助,资源共享

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

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

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

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

(5)分布式连接能力 

2.一次开发,多端部署

3.统一OS,弹性部署

📝本节小结


【华为鸿蒙系统学习】- HarmonyOS4.0开发|自学篇,第3张

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

【华为鸿蒙系统学习】- HarmonyOS4.0开发|自学篇,第4张

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

  1. 减少开发成本和工作量。鸿蒙系统具备分布式架构的特点,可以支持全系列设备,包括智能手机、平板电脑、智能穿戴、智能家居等,开发者无需针对不同的设备进行独立开发,只需要一套代码就可以同时适配多种设备。
  2. 提升应用性能和稳定性。鸿蒙操作系统采用了微内核架构,具有高效的资源管理和隔离机制,可以有效提升应用的性能和稳定性。
  3. 实现商业化运营。鸿蒙还为开发者提供了多种变现方式,包括应用内购买、广告投放等,帮助开发者实现商业化运营

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

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

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


HarmonyOS技术架构:

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

【华为鸿蒙系统学习】- HarmonyOS4.0开发|自学篇,第5张

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

HarmonyOS技术框架视图如下:

【华为鸿蒙系统学习】- HarmonyOS4.0开发|自学篇,第6张

内核层

【华为鸿蒙系统学习】- HarmonyOS4.0开发|自学篇,第7张

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

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

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

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

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


框架层和系统服务层

【华为鸿蒙系统学习】- HarmonyOS4.0开发|自学篇,第8张

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

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

【华为鸿蒙系统学习】- HarmonyOS4.0开发|自学篇,第9张


应用层

【华为鸿蒙系统学习】- HarmonyOS4.0开发|自学篇,第10张

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

【华为鸿蒙系统学习】- HarmonyOS4.0开发|自学篇,第11张


HarmonyOS技术特性:

1.硬件互助,资源共享

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

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

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

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

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

【华为鸿蒙系统学习】- HarmonyOS4.0开发|自学篇,第12张

典型应用场景:

(a)智能家居场景:【华为鸿蒙系统学习】- HarmonyOS4.0开发|自学篇,第13张

(b)多屏联动课堂:【华为鸿蒙系统学习】- HarmonyOS4.0开发|自学篇,第14张

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

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

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

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

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

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

【华为鸿蒙系统学习】- HarmonyOS4.0开发|自学篇,第15张

典型应用场景:

(a)视频通话场景:在做家务时接听视频电话,可以将手机与智慧屏连接,并将智慧屏的

屏幕、摄像头与音箱虚拟化为本地资源,替代手机自身的屏幕、摄像头、听筒与扬声

器,实现一边做家务、一边通过智慧屏和音箱来视频通话。

【华为鸿蒙系统学习】- HarmonyOS4.0开发|自学篇,第16张
(b) 游戏场景:在智慧屏上玩游戏时,可以将手机虚拟化为遥控器,借助手机的重力传感

器、加速度传感器、触控能力,为玩家提供更便捷、更流畅的游戏体验。 

【华为鸿蒙系统学习】- HarmonyOS4.0开发|自学篇,第17张

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

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

理。 

分布式数据管理示意图如下:【华为鸿蒙系统学习】- HarmonyOS4.0开发|自学篇,第18张

协同办公场景:

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

【华为鸿蒙系统学习】- HarmonyOS4.0开发|自学篇,第19张

【华为鸿蒙系统学习】- HarmonyOS4.0开发|自学篇,第20张(4)分布式任务调度 - 跨设备使用应用

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

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

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

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

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

【华为鸿蒙系统学习】- HarmonyOS4.0开发|自学篇,第21张

典型应用场景举例:
导航场景:

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

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

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

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

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

外卖场景:

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

状态。 

(5)分布式连接能力 

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

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

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

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

【华为鸿蒙系统学习】- HarmonyOS4.0开发|自学篇,第22张


2.一次开发,多端部署


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

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

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

【华为鸿蒙系统学习】- HarmonyOS4.0开发|自学篇,第23张

3.统一OS,弹性部署


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

 支持各组件的选择(组件可有可无):根据硬件的形态和需求,可以选择所需的组件。
 支持组件内功能集的配置(组件可大可小):根据硬件的资源情况和功能需求,可以

选择配置组件中的功能集。例如,选择配置图形框架组件中的部分控件。
支持组件间依赖的关联(平台可大可小):根据编译链关系,可以自动生成组件化的

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

📝本节小结

组件不是简单的组件,而是基于HarmonyOS开发的组件,后面会继续学习~

本篇博客主要介绍了华为的鸿蒙系统(HarmonyOS4.0)的

发布,三大特征,技术架构,技术特性

喜欢的小伙伴请多多支持!

这里是Aileen

一名不断学习

的♀大学生

【华为鸿蒙系统学习】- HarmonyOS4.0开发|自学篇,第24张

【华为鸿蒙系统学习】- HarmonyOS4.0开发|自学篇,第25张