一文读懂HarmonyOS知识地图,开启鸿蒙开发新征程

目录

一、HarmonyOS 知识地图是什么?

二、HarmonyOS 基础概念速览

(一)起源与发展

(二)核心特性

(三)技术架构剖析

1. 内核层

2. 系统服务层

3. 框架层

4. 应用层

三、HarmonyOS 知识地图板块解读

(一)开发基础知识

1. 应用程序包

2. 应用配置文件

3. 资源分类与访问

4. ArkTS 语言基础

(二)UI 开发知识

1. 方舟开发框架(ArkUI)

2. 布局与组件

3. 动画与交互

(三)应用模型与能力

1. Ability Kit

2. 信息传递与组件交互

(四)系统能力与服务

1. 媒体服务

2. 网络与连接

3. 数据管理

四、如何利用知识地图高效学习 HarmonyOS 开发

(一)针对初学者

(二)有经验开发者

五、总结与展望


一、HarmonyOS 知识地图是什么?

在鸿蒙开发的广袤天地中,HarmonyOS 知识地图堪称开发者的 “导航神器”。它就像一位贴心的向导,全面聚合了开发指南、Codelabs、示例代码、API 参考、常见问题、视频教程等官方套件,为开发者提供一站式便捷信息获取服务,帮助开发者在 HarmonyOS 开发的复杂世界里找到方向,少走弯路。

HarmonyOS 知识地图之所以重要,是因为它基于开发者任务旅程精心构建。从最初准备与学习 HarmonyOS 的基本概念和架构,搭建开发工具和环境,到应用体验设计、架构搭建、功能开发、应用测试,再到最后的上架与分发,知识地图涵盖了开发的每一个环节,为不同阶段的开发者提供针对性的知识和资源,满足大家在各个开发阶段的需求。

二、HarmonyOS 基础概念速览

(一)起源与发展

HarmonyOS 的诞生可谓是应运而生,2012 年,华为开始规划自有操作系统 ,旨在解决物联网设备多样性与现有操作系统特异性之间的矛盾,构建一个开放、统一的生态。2016 年 5 月,华为消费者 BG 软件部立项研发分布式操作系统 1.0 版本,一年后完成研发,同时鸿蒙内核 1.0 完成技术验证,并继续立项研发 2.0 版本。2019 年,在华为开发者大会上,HarmonyOS 1.0 首次亮相,并在荣耀智慧屏上首秀,内置方舟编译器提升操作流畅性,采用确定时延引擎提升系统性能,系统响应时延降低 25.7%,采用 TEE 微内核形式化验证保证信息安全 ,通过智慧屏产品验证了分布式技术的可行性。

2020 年 9 月,HarmonyOS 2.0 发布,带来分布式能力的重大升级,包括分布式应用框架、分布式软总线、分布式数据管理、分布式安全等技术,还纳入了 GPU Turbo、EROFS、F2FS、确定时延引擎等技术创新 。同年 12 月,面向智能手机应用开发者发布 HarmonyOS 2 开发者 Beta 版本。2021 年 6 月,HarmonyOS 2 正式发布并推出 “百机焕新” 计划,自该日起,超百款手机、平板和智慧屏设备可升级到 HarmonyOS 2,为超 2 亿用户带来全新体验,华为 P50 系列成为首款预装 HarmonyOS 的智能手机,HarmonyOS 2 升级速度屡创纪录,百天破亿,升级率达 77%,截止 2022 年 7 月,搭载 HarmonyOS 2 的华为设备突破 3 亿台。

2021 年,华为发布 HarmonyOS 3.0 开发者预览版,2022 年 7 月正式开启升级,超级终端、万能卡片、流畅性能、隐私安全等特性更进一步,超级终端迎来全面扩容,手机、平板、PC、智慧屏、音箱、耳机、手表、墨水平板、显示器、打印机、智能眼镜、车机等 12 款设备均支持连接组合成超级终端,其中手机、平板、PC、智慧屏等主要带屏设备都可以是超级终端的中心。

2023 年 8 月,HarmonyOS 4.0 发布,具备元服务、分布式万物互联、大智慧、更安全、更个性等特点,同时推出 HarmonyOS NEXT 预览版,系统底座由华为全线自研,去掉 Linux 内核以及 AOSP 等代码,仅支持鸿蒙内核和鸿蒙系统的应用,意味着鸿蒙原生应用全面启动,距发布后一个月,升级用户超过 6000 万。2024 年,HarmonyOS NEXT 正式面向开发者和先锋用户启动 Beta,首批启动开发者 Beta 的机型包括 HUAWEI Mate 60 系列、HUAWEI Mate X5 等,鸿蒙生态设备数已达到 8 亿台 +,鸿蒙原生应用版图逐渐成型,覆盖出行、社交、金融、办公等 18 大垂直领域,5000 + 应用启动原生鸿蒙版本开发,1000 + 应用已上架应用商店 。HarmonyOS 的发展历程,是不断创新和突破的过程,为万物互联的智能时代奠定了坚实基础。

(二)核心特性

HarmonyOS 的分布式架构是其一大亮点,通过分布式软总线、分布式数据管理和分布式任务调度等技术,实现多设备硬件互助和资源共享 。比如在智能家居场景中,用户可以通过手机一键连接并控制智能灯具、智能门锁、智能窗帘等设备,实现设备间的互联互通,轻松打造智能生活场景。在办公场景下,手机、平板和笔记本电脑可以无缝连接,共享文件和应用,用户在手机上编辑的文档,能快速流转到平板或电脑上继续编辑,大大提高办公效率。

多设备协同功能让设备之间的协作更加智能和高效 。以华为超级终端为例,用户只需在控制中心简单操作,就能将手机、平板、智慧屏、音箱等设备快速连接成一个超级终端,实现音频、视频、任务等在不同设备间的无缝流转。当用户在家中使用手机观看视频时,只需轻轻一拉,就能将视频流转到智慧屏上,享受更大屏幕的观影体验,且视频播放进度、音量等信息也能同步,整个过程流畅自然,就像在使用同一台设备。

安全性方面,HarmonyOS 采用微内核设计,通过形式化方法重塑可信安全 。在进行金融交易或处理个人敏感数据时,微内核设计能有效减少受攻击的面,确保系统的安全性。它还具备分布式多端协同身份认证功能,保证只有授权的用户和设备才能访问数据,同时对分布式数据在跨终端流动过程中进行分类分级管理,进一步保障数据安全,让用户放心使用。

性能优化上,HarmonyOS 通过确定时延引擎和高性能 IPC 技术,确保应用响应的及时性,提升系统流畅度 。在运行大型游戏或进行多任务处理时,确定时延引擎可在任务执行前分配系统中任务执行优先级及时限进行调度处理,优先级高的任务资源将优先保障调度,应用响应时延降低 25.7%,高性能 IPC 技术使进程通信效率大幅提升,相比现有系统,能为用户提供更流畅的操作体验,告别卡顿和延迟。

(三)技术架构剖析

1. 内核层

HarmonyOS 采用多内核设计,支持针对不同资源受限设备选用适合的 OS 内核 ,比如对于资源丰富的手机、平板等设备,可以选用功能较为完善的 Linux 内核;而对于资源相对受限的智能穿戴设备,则可以选用轻量级的 LiteOS 内核。内核抽象层(KAL)通过屏蔽多内核差异,对上层提供基础的内核能力,包括进程 / 线程管理、内存管理、文件系统、网络管理和外设管理等 。以进程管理为例,KAL 为上层应用提供统一的进程创建、销毁、调度等接口,无论底层采用何种内核,应用开发者都能以相同的方式管理进程。

硬件驱动框架(HDF)是 HarmonyOS 硬件生态开放的基础,它提供统一外设访问能力和驱动开发、管理框架 。这意味着开发者只需按照 HDF 的规范进行驱动开发,就能让硬件设备在 HarmonyOS 上稳定运行,降低了硬件适配的难度。不同厂商生产的摄像头,只要其驱动按照 HDF 框架开发,就能方便地集成到 HarmonyOS 设备中,为系统提供图像采集功能,实现硬件设备的即插即用,促进硬件生态的繁荣。

2. 系统服务层

系统服务层包含多个子系统集,系统基本能力子系统集为分布式应用在 HarmonyOS 多设备上的运行、调度、迁移等操作提供了基础能力 ,其中分布式软总线就像一根无形的线,为设备之间的互联互通提供统一的分布式通信能力,让设备能够快速发现并连接,高效地传输任务和数据;分布式数据管理实现应用程序数据和用户数据的分布式管理,用户数据不再与单一物理设备绑定,业务逻辑与数据存储分离,应用跨设备运行时数据无缝衔接;方舟多语言运行时提供了 C/C++/JS/ArkTS 多语言运行时和基础的系统类库,为使用不同语言开发的应用提供运行环境。

基础软件服务子系统集为 HarmonyOS 提供公共的、通用的软件服务,如事件通知子系统负责系统内各种事件的通知和处理,当有新消息到达时,能及时通知用户;多媒体子系统支持音频、视频的播放、录制等功能,让用户可以在 HarmonyOS 设备上享受丰富的媒体娱乐体验。

增强软件服务子系统集为 HarmonyOS 提供针对不同设备的、差异化的能力增强型软件服务 ,例如智慧屏专有业务子系统,针对智慧屏的大屏特性,提供了大屏适配的应用界面布局、多屏互动等功能;穿戴专有业务子系统则针对智能穿戴设备的特点,提供了运动监测、健康管理等专属功能。

硬件服务子系统集为 HarmonyOS 提供硬件服务,位置服务子系统可以为应用提供设备的位置信息,生物特征识别子系统支持指纹识别、面部识别等生物特征识别功能,方便用户进行身份验证,提升设备的安全性和便捷性 。

3. 框架层

框架层为 HarmonyOS 应用开发提供了 Java/C/C++/JS 等多语言的用户程序框架和 Ability 框架 ,以及适用于 Java 语言的 Java UI 框架和适用于 JS 语言的 ArkUI 框架,还有各种软硬件服务对外开放的多语言框架 API 。多语言框架让开发者可以根据项目需求和自身技术栈选择熟悉的语言进行开发。使用 Java 语言开发应用时,开发者可以利用 Java UI 框架构建美观、交互性强的用户界面,通过 Ability 框架实现应用的各种能力,如页面跳转、数据存储等;若选择 JS 语言搭配 ArkUI 框架,则能利用其灵活、高效的特点,快速开发出具有现代感的应用界面,同时通过框架提供的 API 调用系统服务,实现丰富的功能。

根据系统的组件化裁剪程度,HarmonyOS 设备支持的 A

你可能感兴趣的:(#,HarmonyOS开发,harmonyos,华为)