华为:2025年鸿蒙生态应用开发白皮书V4.0
5.04 MB
122 页
0 下载
36 浏览
0 评论
0 收藏
| 语言 | 格式 | 评分 |
|---|---|---|
中文(简体) | .pdf | 3 |
| 概览 | ||
V4.0 版权所有 © 华为终端有限公司 2025。 保留一切权利。 本材料所载内容受著作权法的保护,著作权由华为公司或其许可人拥有,但注明引用其他方的内容除外。 未经华为公司或其许可人事先书面许可,任何人不得将本材料中的任何内容以任何方式进行复制、经销、 翻印、播放、以超级链路连接或传送、存储于信息检索系统或者其他任何商业目的的使用。 商标声明 以上为华为公司的商标(非详尽清单),未经华为公司书面事先明示许可,任何第三方不得以任何形式使 用。 注意 华为会不定期对本文档的内容进行更新。 本文档仅作为使用指导,文档中的所有陈述、信息和建议不构成任何明示或暗示的担保。 华为终端有限公司 地址: 广东省东莞市松山湖园区新城路 2 号 网址: https://consumer.huawei.com 2 1)一次开发,多端部署 · · · · · · · · · · · 3)统一生态,系统智能 · · · · · · · · · · · O1 O3 万物互联时代应用开发的机遇、 挑战和趋势 鸿蒙生态应用核心技术理念 12 24 2)可分可合,自由流转 · · · · · · · · · · · 22 CONTENT O2 鸿蒙生态应用开发核心概念 3 O4 O5 O6 鸿蒙生态应用开发能力全景 2)鸿蒙开发套件 · · · · · · · · · · · · · 3)三方库 · · · · · · · · · · · · · · · · · 4)鸿蒙生态伙伴 SDK 市场 · · · · · · · · 32 41 40 高效开发与测试 1)典型开发场景 · · · · · · · · · · · · · · 2)ArkTS 语言 · · · · · · · · · · · · · 3)ArkUI 框架 · · · · · · · · · · · · · · 44 46 44 4)应用程序框架 · · · · · · · · · · · · · · 5)鸿蒙开放能力 · · · · · · · · · · · · · 6)集成开发环境 · · · · · · · · · · · · · · 58 65 61 7)测试工具 · · · · · · · · · · · · · · · 75 快速上架与多端分发 1)快速上架 · · · · · · · · · · · · · · · · 2)应用分发 · · · · · · · · · · · · · · · · 3)服务分发 · · · · · · · · · · · · · · · · 84 91 88 5)开发者支持平台 · · · · · · · · · · · · · 42 1)赋能套件 · · · · · · · · · · · · · · · 29 4 全方位运维分析 O9 全场景案例参考 1O 附录:术语 O8 O7 自由流转与分布式运行环境 1)价值与架构定义 · · · · · · · · · · · · · 2)跨端迁移 · · · · · · · · · · · · · · · · 3)多端协同 · · · · · · · · · · · · · · · · 97 101 100 5 万物互联时代应用开发 的机遇、挑战和趋势 Chapter 1 6 经过十多年的发展,传统移动互联网的增长红利已渐见顶。万物互联时代正在开启,应 用的设备底座将从几十亿手机扩展到数百亿 IoT 设备。GSMA 预测到 2025 年,全球物联网 终端连接数量将达 246 亿个,其中消费物联网终端连接数量将达 110 亿个(注:数据来自 于全球移动通信系统协会发布的《2020 年移动经济》报告)。IDC 预计到 2025 年,中国物 联网总连接量将达到 102.7 亿个(注:数据来自于 IDC 发布的《中国物联网连接规模预测, 2020—2025》报告)。全新的全场景设备体验,正深入改变消费者的使用习惯。 同时应用 开发者也面临设备底座从手机单设备到全场景多设备的转变,通过全场景多设备作为全新的 底座,为消费者带来万物互联时代更为高效、便捷的体验。 新的场景同时也带来了新的挑战。开发者不仅需要支持更加多样化的设备,还需要支持 跨设备的协作。不同设备类型意味着不同的传感器能力、硬件能力、屏幕尺寸、操作系统和 开发语言,还意味着差异化的交互方式。同时跨设备协作也让开发者面临分布式开发带来的 各种复杂性,例如跨设备的网络通信、数据同步等。若采取传统开发模式,适配和管理工作 量将非常巨大。当前移动应用开发中遇到的主要挑战包括: 针对不同设备上的不同操作系统,重复开发,维护多套版本。 多种语言栈,对人员技能要求高。 多种开发框架,不同的编程范式。 命令式编程,需关注细节,变更频繁,维护成本高。 与此同时,AI 时代全面来临,在 PC 互联网到移动互联网到智能化终端演进过程中,AI 计算主要在云端数据中心进行,非常依赖网络,具有一定的时延,且数据传输的安全性、私 密性不能得到有效保证。随着人们对交互和信息获取的智能化要求越来越高,移动设备的计 7 算能力越来越强,在设备侧就能提供 AI 的相关能力,例如自然语言交互、环境智能感知、 图像识别等。如何快速地使用设备侧的强大 AI 能力,使自己的应用更加智能化,进而更好 的服务消费者,也是开发者面临的全新挑战。 移动终端上的应用生态发展到今天也面临着变革。传统厚重的 App,整体体验好,功能 齐全,但开发成本高、周期长,且存在搜索,安装,升级,卸载等一系列需要用户主动关注 的显性操作,这些显性操作给用户带来了实质性的使用成本。轻量化、可快速达成消费者意 图、可独立执行、完成单一功能的程序实体正成为新的趋势,例如小程序、App Clips、快 应用等。根据阿拉丁指数的统计,全网小程序已经突破 700 万个(注:数据来自于阿拉丁研 究院发布的《2021 年度小程序互联网发展白皮书》),远超 App 数量。大型应用开发者普遍 向用户提供轻量化程序实体。在很多特定的使用场景下,小程序等轻量化程序实体的使用占 比已超过 App,成为面向用户的主要触达方式。 轻量化的程序实体所具备的“即用即走、无需安装卸载、持续更新”的特征,也推动了 App 基于搜索下载的“人找应用”的传统分发向“服务找人”的智慧分发的演进。App 遵 循“搜索、下载、安装、使用”的模式,用户主动发现的成本高,拉新、促活、召回的全生 命周期流程相对被动。轻量化的程序实体具有即用即走的体验,可通过各类终端的系统级智 慧入口进行分发,甚至可以在生态应用中分发,依托无所不在的入口流量和标签化识别,向 用户主动提供精准服务。配合 CPS(Cost Per Sale)等商业模式,可以为开发者带来更高的 ROI(Return of Investment)。 为了更好的抓住机遇,应对万物互联所带来的一系列挑战,新的应用生态应该具备如下 特征: 8 单一设备延伸到多设备:应用一次开发就能在多个设备上运行,软件实体能够从单 一设备转移到其他设备上,且多个设备间能够协同运行,给消费者提供全新的分布 式体验。 厚重应用模式到轻量化服务模式:提供轻量化的服务,较低的资源消耗,一步直达, 快速完成消费者特定场景的任务。 集中化分发到 AI 加持下的智慧分发:为消费者提供智慧场景服务,实现“服务找 人”。 纯软件到软硬芯协同的 AI 能力:提供软硬芯协同优化的 AI 能力,全面满足应用高 性能诉求。 9 鸿蒙生态应用 开发核心概念 Chapter 2 10 HarmonyOS 应用:使用 HarmonyOS SDK 开发的应用程序,能够在华为终端设备 (如:手机、平板等)上运行,其有两种形态: 传统方式的需要安装的 App。 轻量级,具备免安装,随处可及,服务直达,自由流转等关键特征的元服务。 HarmonyOS 元服务:元服务是 HarmonyOS 面向万物互联时代提供的一种轻量级 应用程序形态。它基于 HarmonyOS 平台开放能力开发,打包为 App Pack 形态,运行 在 HarmonyOS 操作系统,由 HarmonyOS 应用程序框架管理,具备随处可及、服务直 达、跨设备等核心特征。 服务卡片:HarmonyOS 系统定义的一种界面展示形式,是 HarmonyOS 应用和元 服务的一个可选组成部分,将重要信息或操作前置到卡片,以达到服务直达,减少操作 层级的目的。服务卡片常用于嵌入到其他系统应用(桌面/负一屏)中作为其界面的一 部分显示,并支持点击拉起应用或元服务。 HarmonyOS 应用与元服务基于同一个鸿蒙系统技术栈开发,同属一个鸿蒙生态。 开发者通过业务解耦将应用分解为若干元服务独立开发,按需根据场景组合成复杂应用。 11 鸿蒙生态应用 核心技术理念 Chapter 3 - 1)一次开发,多端部署 - 2)可分可合,自由流转 - 3)统一生态,系统智能 鸿蒙生态应用 核心技术理念 12 在万物智联时代重要机遇期,鸿蒙系统结合移动生态发展的趋势,提出了三大技术理念: 一次开发,多端部署;可分可合,自由流转;统一生态,系统智能。 图 3-1:核心技术理念 1)一次开发,多端部署 “一次开发,多端部署”指的是一个工程,一次开发上架,多端按需部署。目的是支撑 开发者高效地开发多种终端设备上的应用。为了实现这一目的,鸿蒙系统提供了几个核心能 力,包括多端开发环境,多端开发能力以及多端分发机制。 13 图 3-2:一次开发 多端部署 多端开发环境 HUAWEI DevEco Studio 是面向全场景多设备提供的一站式开发平台,支持多端双向 预览、分布式调优、分布式调试、多设备模拟、低代码可视化开发等能力,帮助开发者降低 成本、提升效率、提高质量。HUAWEI DevEco Studio 提供的核心能力如下图所示: 图 3-3:HUAWEI DevEco Studio 核心功能和特征 14 1. 多端工程管理 创建鸿蒙应用/元服务/模块工程时,支持选择需要适配的设备类型,DevEco Studio 会根据选中的设备类型去匹配及检测对应的功能模块。避免不同的 Entry 模块之间,出现支 持的设备类型重叠的情况。推荐典型的多设备工程目录结构如下所示: 图 3-4:多设备工程目录结构 2. 多端开发辅助 在编码阶段,DevEco Studio 提供了一些实时检测机制,以辅助开发者写出高质量的多 设备应用。 API 检测:检测设备特有 API 是否可用,以避免 API 被误用。例如:在一个平 板应用上调用 NFC 接口,编辑区会标红。此外,查看提示信息可以知道,平板设备不 具备 NFC 的能力。 15 图 3-5:开发辅助检测提示 组件参数检测:当组件的宽度、高度、圆角半径等参数使用了固定值,并且和 系统 Resource 相同时,DevEco Studio 会给出警告,并提示可使用系统 Resource 进 行一键替换。 3. 多端双向预览 在鸿蒙生态应用的开发阶段,因不同设备的屏幕分辨率、形状、大小等差异,开发者需 要在不同设备上查看 UI 界面显示,确保实现效果与设计目标一致。传统的开发模式下,开 发者需要获取大量不同的真机设备用于测试验证。HUAWEI DevEco Studio 提供了多种设 备的双向预览能力,支持同时查看 UI 代码在多个设备上的预览效果,并支持 UI 代码和预览 效果的双向定位修改。 4. 多端模拟器 移动应用开发时需要使用本地模拟器来进行应用调试,实现快速开发的目的。鸿蒙生态 应用需要运行在多种不同类型的设备上,为此 HUAWEI DevEco Studio 提供了不同类型的 设备模拟,支持开发者在多个模拟设备上同时进行开发调试,降低门槛、节约成本。 16 DevEco Studio 在模拟器中预置了 Mate、Pura 系列机型的模板,同时也支持自定义屏幕参 数。另外为支撑多设备并行调测,提供了多屏模拟能力,可以在一个模拟器上同时进行最多 4 种设备的并行调试。 5. 多端测试 DevEco Studio 针对多设备静态编码检测、运行效果检测提供了两种类型检测工具。 Code Linter 编码检测:支持对应用/元服务的代码文件进行扫描、检测,对于违反 多设备开发规范的代码进行告警。典型规范如颜色使用固定值、字体单位未使用 fp 等。 应用体检工具:通过体检工具可以检测应用/元服务在设备上的运行效果,检测出 人眼难以发觉的 UX 问题,如不同设备下的色差、字体大小、图标清晰度等。 多端开发能力 应用如需在多个设备上运行,需要适配不同的屏幕尺寸和分辨率、不同的交互方式(如 触摸和键盘等)、不同的硬件能力(如内存差异和器件差异等),开发成本较高。因此,多端 开发能力的核心目标是降低多设备应用的开发成本。为了实现该目标,鸿蒙系统提供了以下 几个核心能力,支持多端 UI 适配,交互事件归一,设备能力抽象,帮助开发者降低开发与 维护成本,提高代码复用度。 17 1. 多端 UI 适配 不同设备屏幕尺寸、分辨率等存在差异,鸿蒙系统将对屏幕进行逻辑抽象,包括尺寸和 物理像素,并提供丰富的自适应/响应式的布局和视觉能力,方便开发者进行不同屏幕的界 面适配。 屏幕逻辑抽象:鸿蒙系统提供虚拟像素 vp(virtual pixel)对分辨率进行抽象,不同设 备的系统在底层将物理像素转化成虚拟像素,为应用开发者提供统一单位。不同设备的尺寸 存在差异,鸿蒙系统根据设备的屏幕水平宽度,抽象和定义了五种尺寸:超小(xs)、小 (sm)、中(md)、大(lg)、超大(xl);纵向抽象和定义了三种比例:小(Small)、中 (Medium)、大(Large) 。这些抽象后的屏幕尺寸与日常使用的设备屏幕类型有一定的对 应关系。开发者可面向应用运行的目标设备进行屏幕类型的适配。 图 3-6:尺寸抽象化 布局:鸿蒙系统提供的布局主要分为自适应布局和响应式布局。自适应布局是当外部容 器大小发生变化时,容器内元素可以根据相对关系自动变化以适应外部容器变化的布局能力。 18 相对关系包含占比、固定宽高比、显示优先级等。当前自适应布局能力主要有 7 种:拉伸能 力、均分能力、占比能力、缩放能力、延伸能力、隐藏能力、折行能力。响应式布局是当显 示空间大小发生变化时,布局可以根据预设断点、栅格或特定的特征(如屏幕方向、窗口宽 高等)进行自动切换。当前响应式布局能力主要有 3 种:断点、媒体查询、栅格布局。鸿蒙 系统将响应式布局能力下沉到默认组件的基础属性中,比如网格、列表和轮播组件等,支持 自动增加显示列数,以便充分利用屏幕宽度,节省应用开发工作量。 视觉:鸿蒙系统提供的视觉样式能力,包括分层参数、多态组件和主题。 2. 交互事件归一 事件归一抽象:不同设备间的交互方式等存在差异,如触摸、键盘、鼠标、语音、手写 笔等,鸿蒙系统将不同设备的输入映射成归一交互事件,从而简化开发者适配逻辑。 以缩放交互为例,通过多指触控的张合来完成缩放动作,在多设备场景下,缩放交互会 出现多种不同的操作输入方式,如表 3-1 所示。为了让应用更容易的支持不同的交互方式, 鸿蒙系统提供归一的缩放交互事件。 表 3-1:缩放交互的规则 操作方 式 触屏双指捏合 交互 键盘 Ctrl 键+鼠 标滚轮交互 键盘 Ctrl 键+ “+/-”键交互 触控板双指捏合 交互 表冠旋转交互 上报事 件 触屏双指捏合 事件 按键+滚轮组合 事件 按键组合点击事件 触控板双指捏合 事件 表冠旋转事件 19 组件归一响应:当应用部署在不同设备上供用户使用时,需要支持多种 I/O 设备,界面 呈现出相应的状态为用户提供正确的视觉引导。例如触摸时显示按压状态,鼠标特有的悬停 状态,键盘走焦状态。鸿蒙系统默认提供多种交互方式的组件实现,方便开发者支持多种输 入方式。 3. 设备能力抽象 不同设备间的软、硬件能力等存在差异,如设备是否具备定位能力、是否具备摄像头、 是否具备蓝牙功能等,鸿蒙系统需要对设备能力进行逻辑抽象,并提供接口来查询设备是否 支持某一能力,方便开发者进行不同软、硬件能力的功能适配。在鸿蒙系统中,使用 SystemCapability(简写为 SysCap)定义每个部件对应用开发者提供的系统软硬件能力。 应用开发者基于统一的方式访问不同设备的能力。 图 3-7:API、SystemCapability、部件和设备的关系 20 多端分发机制 如果需要开发多设备上运行的应用,一般会针对不同类型的设备多次开发并独立上架。 开发和维护的成本大,为了解决这个问题,鸿蒙系统提供了“一次开发,多端部署”的能力, 开发者开发多设备应用,只需要一套工程,一次打包出多个 HAP,快速上架,即可根据设 备类型按需进行分发。 除了可以开发传统的应用,开发者还可以开发元服务。元服务是一种面向未来的服务提 供方式,具有独立入口的、免安装的、可为用户提供一个或多个便捷服务的应用程序形态。 鸿蒙系统为元服务提供了更多的分发入口,方便用户获取,同时也增加了元服务露出的机会。 1. 多设备按需分发 鸿蒙系统提供了两种模式帮助开发者基于“一次开发,多端部署”能力分发应用和元服 务到不同设备上。 21 图 3-8:多设备按需分发的两种模式 模式 1:应用或服务的 UI 自适应不同尺寸的设备屏幕,并且在不同设备的功能相同, 可以实现多设备共享一个 HAP 包。这种场景下建议开发者通过一个模块来开发,并 配置该模块支持多设备,然后再编译构建生成一个 HAP,分发到不同类型的设备上 运行。 模式 2:应用或服务的 UI、功能在不同设备间存在差异,无法实现 HAP 包多设备归 一。可根据实际情况设置不同模块适用的设备类型,编译构建多个 HAP 包,一起上 架。HUAWEI AppGal
| ||
下载文档到本地,方便使用
共 122 页, 还有
1 页可预览,
继续阅读
文档评分


华为5G AI在公共安全应用方案