解读《鸿蒙生态应用开发白皮书》

解读《鸿蒙生态应用开发白皮书》

《鸿蒙生态应用开发白皮书》概述

11月4-6日,华为开发者大会2022(HDC)在东莞松山湖举办。会上重磅首发《鸿蒙生态应用开发白皮书》!(以下简称《白皮书》)

原文链接如下:

https://developer.huawei.com/consumer/cn/doc/harmonyos-bps?ha_source=wd&ha_sourceId=89000503

《白皮书》全面阐释了鸿蒙生态下应用开发核心理念、关键能力以及创新体验,为开发者展现鸿蒙开发套件提供的能力全景和未来愿景。

《白皮书》的内容充实,干货满满,整个看完后畅快淋漓,让人大呼过瘾。由于《白皮书》是通过图片格式发布的,为方便大家的深入理解,我梳理了一个思维导图,给大家一个Bird View:

整个《白皮书》分为八个章节(第九章的“术语”我就忽略了),分别是:

第一章:万物互联时代应用开发的机遇、挑战和趋势(2页)

第二章:鸿蒙生态应用核心技术理念(14页)

第三章:鸿蒙生态引用开发能力全景(21页)

第四章:高效开发与测试(36页)

第五章:统一上架与多端分发(10页)

第六章:自由流转与分布式运行环境(7页)

第七章:全方位运维分析(4页)

第八章:全场景案例参考(5页)

上述《白皮书》不同章节后面标识的页数,不包含对应章节的封面图片,是一个四舍五入的数据,但基本代表章节的繁简程度,也体现了《白皮书》在不同部分的重视程度。下面我就针对这八个章节分别进行解读:

万物互联时代应用开发的机遇、挑战和趋势

《白皮书》对鸿蒙操作系统生态的理解,紧扣两个关键趋势:1. 万物互联时代开启。2. 全场景多设备趋势。

从人因学的维度来分析,人的注意力通道无法承载过多的信息输入。在这个万物互联的时代,按照传统交互逻辑,用户会被淹没在各种弹窗、对话框、通知和提醒中应接不暇、无所适从。所以《白皮书》明确提出了两种技术趋势:

1. 必须从“人找服务”(传统分发)到“服务找人”(智能分发)的演进。

2. 效率优先,应用必须要轻量化、即用即走,不要对人的注意力有过多的干扰。

鸿蒙生态应用核心技术理念

这一章节是关键,因为介绍了鸿蒙生态应用开发的技术核心理念,也就是:

一次开发,多端部署、一次开发,多端部署,是一个非常宏大的理念。这个理念通过以下几个关键能力实现:

  • 自适应和响应式布局的多端UI适配;
  • 不同设备的差异化的交互的逻辑归一规则映射;
  • 不同的设备能力的逻辑抽象

并把这3个能力通过一系列的开发工具和调测工具来支撑,最后通过多端的分发机制来实现快速发布。

  • 可分可合,自由流转

多设备人机交互按时间逻辑,基本分为两类:串行交互/迁移(连续性和一致性)和并行交互/协同(协作性和互补性),两者统称“自由流转”。

  • 统一生态,原生智能

鸿蒙的原生智能,其实是华为的多项目协同能力的体现。它在服务能力开放层、应用能力开放层和芯片能力开放层都绑定了MindSpore的能力。

鸿蒙生态引用开发能力全景

从赋能套件、开发套件、三方库和开发者支持平台能看出来,鸿蒙是系统化、平台化、以及组合拳的方式在构建生态。我不多说,仅举几个例子:

  • Codelabs,就是通过代码样例以及详细的开发指导,帮助开发者一步步完成指定场景的应用开发,实现快速上手。
  • 方舟编译器,实现多设备统一的编译运行时底座。
  • HMS Core,为应用开发提供场景化服务平台。
  • 开发者成长计划,从校园和年轻开发者的培养做起。

高效开发与测试

这一章节最为详尽,重点放在两个上面:

ArkTS语言

ArkTS 是鸿蒙生态应用的开发语言。它在 TypeScript (简称TS)的基础上,提供了声明式 U状态管理等相应的能力,让开发者以更简洁、更自然的方式开发高性能应用。TS是JavaScript (简称JS) 的超集,而基于TS的ArkTS 会结合应用开发和运行的需求持续演进,包括引入分布式开发范式、并行和并发能力增强、类型系统增强等方面的语言特性。

ArkUI框架

ArkUI除了介绍UI的正常架构之外,还提出了2类开发范式,包括:类Web开发范式和声明式开发范式。

在ArkUI章节还专门提到了可视可说开发,这部分是指导纯语音交互界面设备开发的,我理解也算是另外一类开发范式吧。

所有的开发自然离不来开发工具,鸿蒙提供的开发套件,是一系列的工具集:

其中,鸿蒙的集成开发环境是Huawei DevEco Studio,提供一站式鸿蒙生态应用、原子化服务开发能力:

统一上架与多端分发

鸿蒙是通过Huawei AppGallery Connect为开发者提供全球化、全场景一站式应用分发能力的。Huawei AppGallery Connect作为开发者统一提交入口,集成证书管理、项目管理、版本管理等功能,支持鸿蒙生态应用、原子化服务的快速上架与分发。

其中原子化服务的分发要多说两句:原子化服务与AI算法深度配合,实现多入口/场景化分发。特别是场景感知的AI分发,通过对场景的感知、理解和推理决策,使用户一体和服务数据更精准匹配。

自由流转与分布式运行环境

跨端迁移和多端协同是鸿蒙交互的特色,这需要技术架构的支撑,包括:流转任务发布、应用免安装、数据序列化、兼容性判断等。自由流转将彻底改变多设备应用特性开发的复杂性以及多设备应用分发模式。

全方位运维分析

运维分析还是通过Huawei AppGallery Connect来实现的,包括:性能管理、崩溃服务、云服务监控,支持精准定位问题。同时支持多维度数据分析,智能诊断问题并给出解决方案,为开发者明确质量优化方向,提升用户体验。

全场景案例参考

《白皮书》中分别针对:影音娱乐、运动健康、智慧出行、智慧办公和智能家居五个场景给了例子来说明全场景的业务特点。浅尝辄止,并没有过度展开,我理解,场景的挖掘有待于生态伙伴的集体贡献。

全场景案例参考

总体而言,《白皮书》提供了鸿蒙生态应用开发的一个总览。这次是由华为主导发布的,但鸿蒙生态是有很多生态企业单位一起共建的,这也是鸿蒙开源的初衷。希望在后续版本能看到生态企业单位一起联合发布。除了北向生态白皮书,也应该包含南向生态。期待未来的白皮书能有更为开放的版本和发布形式。