第1章 鸿蒙演进全图景
很多初学者被 HarmonyOS、HarmonyOS NEXT、OpenHarmony、“纯血鸿蒙”这些词绕晕,又搞不清自己装的 DevEco Studio 到底在给谁写应用。这一章不写代码,只做三件事:理时间线、分清楚系统形态、建立技术栈全景图。
1.1 HarmonyOS 的诞生与定位
HarmonyOS(鸿蒙)是华为自研的面向全场景的分布式操作系统。它从第一天起就不是“另一个手机 ROM”,而是要把手机、平板、手表、车机、智慧屏、耳机、IoT 设备拉到同一个软件底座上。理解这个定位,才能理解后面为什么会有“分布式软总线”“一次开发多端部署”这些在别的移动平台上看不到的设计。
下面这张时间线是本书所有版本讨论的基准,建议先有个整体印象:
|
时间 |
事件 |
意义 |
|
2019-08-09 |
华为开发者大会发布 HarmonyOS 1.0 |
首发,落地在智慧屏上,内核为Linux 内核 |
|
2020-09-10 |
发布 HarmonyOS 2.0;OpenHarmony 开源 |
手机 Beta 启动;开源社区建立,首批为轻量系统(LiteOS) |
|
2021-06-02 |
HarmonyOS 2 正式商用,推送手机 |
手机进入鸿蒙时代;兼容 AOSP(Android 开源项目)应用 |
|
2022-07-27 |
HarmonyOS 3 发布 |
超级终端、多设备协同体验增强 |
|
2023-08-04 |
HarmonyOS 4 发布 |
元服务、服务卡片体系成熟 |
|
2024-01 |
HarmonyOS NEXT(开发者预览)开放 |
“纯血鸿蒙”首次面向开发者:移除 AOSP,仅跑原生 ArkTS 应用 |
|
2024-10-22 |
HarmonyOS NEXT( HarmonyOS 5 )正式商用 |
纯血系统正式装机,第三方应用必须用 ArkTS/ArkUI 重写 |
|
2025-01 ~ 2025 年中 |
HarmonyOS 5.x 持续迭代(含星河版特性) |
生态应用数量快速爬坡,元服务规模扩大 |
|
2025-10-22 |
HarmonyOS 6 正式发布 |
消费者稳定版基线,对应 API 20 |
|
2026-08-29 |
DevEco Studio 26.0.0 Release 首发 |
版本号改为年份制;本书主代码基线 |
从这张表能看出两条主线:一条是“系统本身”从智慧屏走向手机、再走向全设备;另一条是“应用生态”从兼容 Android APK,走到只认 ArkTS 原生包。本书所有示例代码都站在 2024-10 之后的纯血基线上,不再讨论如何兼容 APK。
【提示】
判断一个教程是否过时,最快的办法就是看它是否还在教你“怎么在鸿蒙上跑 Android 应用”。2024 年 10 月之后的新设备已经没有 AOSP 兼容层了,这类内容对纯血鸿蒙开发者没有价值。
1.2 HarmonyOS / HarmonyOS NEXT / OpenHarmony 的关系与区别
这三个词是初学者最容易混的。一句话先讲清楚:
- HarmonyOS:华为面向消费者的商业操作系统总称。2021–2024 年上半年的版本(HM 2/3/4)带 AOSP 兼容;2024-10 之后的 HarmonyOS 5(即 HarmonyOS NEXT 商用名)、HarmonyOS 6 是纯血版本。
- HarmonyOS NEXT:2024 年初对“纯血版”的开发者预览命名,2024-10 商用后正式归入 HarmonyOS 5 产品线。今天再提 NEXT,基本指的就是“无 AOSP、全栈自研”这条技术路线。
- OpenHarmony:开放原子开源基金会托管的开源项目,是 HarmonyOS 的开源底座。它不含 GMS、不含华为手机服务(HMS)闭源部分,任何厂商都可以拿它做自己的系统。
|
对比项 |
OpenHarmony(开源) |
HarmonyOS NEXT / 5 / 6(商用纯血) |
早期 HarmonyOS 2/3/4(兼容版) |
|
是否含 AOSP 兼容层 |
不含 |
不含 |
含(可装 APK) |
|
应用包形态 |
.app/.hap(ArkTS) |
.app/.hap(ArkTS) |
.hap + .apk 双轨 |
|
分发主体 |
开源社区,厂商定制 |
华为应用市场 / AGC |
华为应用市场 |
|
HMS Core 闭源服务 |
不含(由厂商自行集成) |
含 |
含 |
|
典型设备 |
开发板、行业终端、第三方 IoT 设备 |
华为手机/平板/手表/车机 |
2021–2024 华为手机 |
|
与本书关系 |
SDK 同源,API 一致 |
本书目标平台 |
不再教学 |
【注意】
OpenHarmony 的版本号和 HarmonyOS 的 API 号是对齐的:OpenHarmony 6.0 Release 对应 API 20。你从开源社区拉到的 SDK 和 DevEco 里装的手机 SDK,接口定义是同一套;差别只在闭源服务和设备形态。
1.3 纯血鸿蒙:移除 AOSP、全栈自研
“纯血鸿蒙”是 2024 年前后媒体造的词,技术含义很具体:系统里不再包含 AOSP(Android Open Source Project)的任何代码。这意味着三件事:
- 系统不再运行 Android APK,第三方应用必须用 ArkTS 开发、打包成 .hap/.app;
- Framework 层的 Binder、AMS、WMS 这套 Android 机制全部替换为鸿蒙自研的 Ability 调度、渲染管线;
- 内核与系统服务全部走 OpenHarmony 主干 + 华为增强,不再需要靠 Linux 内核+AOSP 凑出一个手机系统。
纯血化不是一夜之间完成的。关键节点:
- 2021 年 HM 2 时代就开始在手机上并行运行两套应用框架(原生 ArkTS 与 AOSP 兼容层);
- 2023 年起 DevEco Studio 全面转向 Stage 模型,FA 模型进入维护期;
- 2024-01 HarmonyOS NEXT 开发者预览:明确告知开发者“这一版手机上跑不了 APK”;
- 2024-10-22 正式商用:新出厂机型不再带 AOSP;
- 2025-10-22 HarmonyOS 6:纯血生态成为唯一主线,API 20 冻结。
对开发者来说,纯血化最大的好处是性能和一致性:没有兼容层的翻译损耗,系统渲染、调度、内存管理都是为 ArkTS 应用量身定做的;坏处是没有存量应用红利,所有 App 都要重写。这也是为什么 2024–2026 年鸿蒙开发者岗位需求快速上升——生态需要大量原生开发者。
【踩坑】
网上 2023 年及以前的教程里,凡是教你用 Java/XML 写 UI、用 FA 模型(featureAbility)、用 router.pushUrl 做主导航的,都属于旧范式。本书只教 Stage 模型 + ArkTS + ArkUI 声明式范式,旧范式只在迁移背景里提一句。
1.4 系统技术架构
纯血 HarmonyOS 的分层结构和典型 Unix 系统类似,但中间夹了一层很有特色的分布式能力。从上到下分四层:
|
层次 |
主要内容 |
开发者能接触到什么 |
|
应用层 |
用户安装的 .app/.hap、元服务、服务卡片 |
你写的代码就跑在这一层 |
|
应用框架层 |
ArkUI 声明式 UI 框架、ArkTS 运行时、Stage 模型(UIAbility/ExtensionAbility)、Kit 开放接口(网络、数据、媒体、位置……) |
import 的 @kit.* 包都在这一层 |
|
系统服务层 |
分布式软总线、分布式数据管理、事件通知、用户 IAM、图形渲染引擎、媒体引擎、权限/安全子系统 |
通过 Kit 间接使用 |
|
内核层 |
手机/平板用 Linux 内核内核形态;轻量设备用 LiteOS;统一内核抽象层 |
几乎不接触,NDK 章节才会涉及 |
需要特别强调的是系统服务层:它不是简单的“驱动集合”,而是把跨设备能力做成了系统级服务。你写应用时不需要知道手机和平板之间是怎么发现对方的,只要调 @kit.DistributedServiceKit 里的接口就行,下面的链路由软总线完成。这种“系统做重、应用做轻”的思路,是鸿蒙和 Android/iOS 在架构哲学上最大的差别。
再展开说一下应用框架层。这一层里对你最重要的是三块:ArkTS 运行时、ArkUI 声明式框架、Stage 应用模型。ArkTS 运行时负责把 .ets 源码 AOT 编译成机器码,提供垃圾回收和标准库;ArkUI 负责把你写的 build() 描述翻译成屏幕上的渲染树;Stage 模型则定义了“一个应用由哪些组件(Ability)组成、它们的生命周期怎么跑、Context 怎么拿到”。你写的 90% 代码都在和这三块打交道,后面三章会逐一深入。
至于内核层,手机/平板这类富设备用的是 Linux 内核的增强形态;手表、传感器、轻量 IoT 设备用 LiteOS-A 或 LiteOS-M;内核抽象层对上提供统一的系统调用接口。你写应用时永远不会直接碰内核,但性能优化章节(第 22 章)会涉及渲染线程、GC 停顿这些和内核调度相关的话题。
1.5 分布式软总线与超级终端
分布式软总线是鸿蒙最出名的底层技术,也是“超级终端”体验的物理基础。它做的事可以概括成一句话:把附近多台设备自动发现后,虚拟成一块“分布式总线”,让上面的服务像在同一台机器上互相调用一样。
几个关键特性:
- 自动发现:同一华为账号、同一局域网下的手机/平板/电脑/耳机自动互相感知,无需手动配对;
- 多协议融合:底层可以走 Wi-Fi P2P、蓝牙、硬连线,应用层不关心;
- 虚拟总线:跨设备调用延迟低到可以跑输入输出(比如平板上继续手机上的编辑、车机接起手机通话);
- 安全:设备间传输加密、身份鉴权,用户在“超级终端”界面手动拖拽授权。
用户侧看到的产品形态就是“超级终端”:手机顶部下拉控制中心,把设备图标拖到一起就完成协同。开发者侧的接口主要在 @kit.DistributedServiceKit(设备管理、跨设备迁移、跨设备数据同步)里,第 18 章会专门实战。
【提示】
不要把“分布式”理解成云端协同。鸿蒙的分布式首先是近场、端到端的——两台设备在同一个房间里就能跑,不依赖服务器。这也是为什么它对延迟敏感的场景(拖拽、输入、通话接力)也能胜任。
1.6 鸿蒙生态现状
生态数字变化很快,这里只给结构性判断,不给会过时的精确装机量;以华为官方发布会公布口径为准。
|
维度 |
现状(2025–2026 基线) |
|
装机量 |
HarmonyOS 6 发布后,纯血鸿蒙设备数已达数亿量级,覆盖华为手机主力机型 |
|
原生应用 |
主流高频 App(社交、支付、购物、出行、办公)均已上架原生版本;长尾应用仍在补齐 |
|
元服务 |
免安装、可分享的轻量形态,数量增速快,是商家和服务方的重要阵地 |
|
服务卡片 |
桌面卡片体系成熟,天气、日历、待办、物流等卡片成为系统级入口 |
|
设备形态 |
手机、平板、折叠屏、手表、智慧屏、车机(鸿蒙座舱)、耳机、打印机、IoT 模组 |
|
开发者 |
DevEco Studio 全球下载量百万级;AGC(AppGallery Connect)为官方分发与云服务平台 |
对学习者的现实意义:高频刚需类应用已经有官方和大厂的成熟参考实现,你在应用市场能直接下载体验;但工具类、垂直行业类、出海类应用仍然缺人,这恰恰是个人开发者和中小团队的机会窗口。
另外两个生态角色值得单独说:
- 元服务(Atom Service):不需要安装,扫码或点一下就能用,用完即走。它在工程形态上和普通应用几乎一样,但包体更小、能力受限、入口更轻。服务商家、活动页、轻量化工具特别适合做成元服务,第 17 章会专门讲。
- 服务卡片(Form):嵌在桌面上的微型 UI,背后由你的应用提供数据。天气、日历、待办、外卖进度这类场景,卡片是比 App 更短的路径。
这三种形态(普通应用 / 元服务 / 卡片)共用同一套 ArkTS + ArkUI 技术栈,会写应用就能写元服务和卡片,边际成本很低。
1.7 开发技术栈总览
本书后面所有内容都围绕这一套栈展开,先建立地图:
|
层 |
技术/工具 |
作用 |
|
语言 |
ArkTS |
TypeScript 的严格化子集,本书第 3 章精讲 |
|
UI |
ArkUI(声明式) |
用 TS 式描述式代码写界面,状态驱动刷新;第二篇全部围绕它 |
|
应用模型 |
Stage 模型 |
UIAbility/ExtensionAbility + Context,替代旧 FA 模型;第 11 章 |
|
IDE |
DevEco Studio 26.0.0 |
基于 IntelliJ 2026.1.1,自带 SDK、模拟器、签名工具 |
|
构建 |
Hvigor 6.26.8 |
Gradle 思想的 TS 构建工具,工程根目录 hvigorfile.ts |
|
包管理 |
ohpm 26.0.0.630 |
OpenHarmony Package Manager,等价于 npm;第三方包放 ohpm 仓 |
|
运行时 |
方舟方舟编译器 / ArkTS 运行时 |
AOT 编译 + 托管运行时,保证类型安全与性能 |
|
分发 |
AGC + AppGallery |
上架、签名、灰度、运营分析 |
有 TypeScript / React / 前端经验的人会觉得这套栈很亲切:ArkTS 像 TS,ArkUI 像 SwiftUI/Flutter,ohpm 像 npm。但千万别用写 Web 前端的习惯直接写——ArkTS 是强类型、严格约束的,第 3 章会专门讲它和 TS 的差别。
从学习路径看,建议按这个顺序建立技能:
- 先用第 3 章把 ArkTS 语言本身的硬约束过一遍(半天到一天);
- 再用第二篇把 ArkUI 布局、状态管理、导航练熟(这是日常写得最多的代码);
- 然后用第三篇打通系统能力:权限、数据存储、网络;
- 最后用第四篇做多端部署、元服务、分布式这些“鸿蒙特色”能力。
不要一开始就去啃 NDK、动画、Canvas 这些高级话题——它们建立在前四步之上,基础不牢学起来会非常痛苦。
【本章要点】
鸿蒙 = 商业系统(HarmonyOS)+ 开源底座(OpenHarmony);2024-10 起进入纯血时代,本书只教纯血原生开发;技术栈 = ArkTS + ArkUI + Stage + DevEco + ohpm。下一章把这套工具装起来。
更多推荐

所有评论(0)