鸿蒙生态应用开发白皮书.pdf
《鸿蒙生态应用开发白皮书.pdf》由会员分享,可在线阅读,更多相关《鸿蒙生态应用开发白皮书.pdf(131页珍藏版)》请在咨信网上搜索。
1、 V3.0 1)一次开发,多端部署 3)统一生态,原生智能 O1 O3 万物互联时代应用开发的机遇、挑战和趋势 鸿蒙生态应用核心技术理念 9 21 2)可分可合,自由流转 18 CONTENT O2 鸿蒙生态应用开发核心概念 O4 O5 O6 鸿蒙生态应用开发能力全景 2)鸿蒙开发套件 3)三方库 4)鸿蒙生态伙伴 SDK 市场 26 46 45 高效开发与测试 1)典型开发场景 2)ArkTS 语言 3)ArkUI 框架 50 51 50 4)应用程序框架 5)HarmonyOS SDK 6)集成开发环境 63 71 66 7)测试工具 81 统一上架与多端分发 1)快速上架 2)应用分发
2、3)服务分发 94 101 98 5)开发者支持平台 47 1)赋能套件 24 全方位运维分析 O9 全场景案例参考 1O 附录:术语 O8 O7 自由流转与分布式运行环境 1)价值与架构定义 2)跨端迁移 3)多端协同 108 112 111 2 万物互联时代应用开发 的机遇、挑战和趋势 ChapterChapter 1 1 3 经过十多年的发展,传统移动互联网的增长红利已渐见顶。万物互联时代正在开启,应用的设备底座将从几十亿手机扩展到数百亿 IoT 设备。GSMA 预测到 2025 年,全球物联网终端连接数量将达 246 亿个,其中消费物联网终端连接数量将达 110 亿个(注:数据来自于全
3、球移动通信系统协会发布的2020年移动经济报告)。IDC预计到2025年,中国物联网总连接量将达到 102.7 亿个(注:数据来自于 IDC 发布的中国物联网连接规模预测,20202025报告)。全新的全场景设备体验,正深入改变消费者的使用习惯。同时应用开发者也面临设备底座从手机单设备到全场景多设备的转变,通过全场景多设备作为全新的底座,为消费者带来万物互联时代更为高效、便捷的体验。新的场景同时也带来了新的挑战。开发者不仅需要支持更加多样化的设备,还需要支持跨设备的协作。不同设备类型意味着不同的传感器能力、硬件能力、屏幕尺寸、操作系统和开发语言,还意味着差异化的交互方式。同时跨设备协作也让开发
4、者面临分布式开发带来的各种复杂性,例如跨设备的网络通信、数据同步等。若采取传统开发模式,适配和管理工作量将非常巨大。当前移动应用开发中遇到的主要挑战包括:针对不同设备上的不同操作系统,重复开发,维护多套版本。多种语言栈,对人员技能要求高。多种开发框架,不同的编程范式。命令式编程,需关注细节,变更频繁,维护成本高。与此同时,AI 时代全面来临,在 PC 互联网到移动互联网到智能化终端演进过程中,AI计算主要在云端数据中心进行,非常依赖网络,具有一定的时延,且数据传输的安全性、私密性不能得到有效保证。随着人们对交互和信息获取的智能化要求越来越高,移动设备的计 4 算能力越来越强,在设备侧就能提供
5、AI 的相关能力,例如自然语言交互、环境智能感知、图像识别等。如何快速地使用设备侧的强大 AI 能力,使自己的应用更加智能化,进而更好的服务消费者,也是开发者面临的全新挑战。移动终端上的应用生态发展到今天也面临着变革。传统厚重的App,整体体验好,功能齐全,但开发成本高、周期长,且存在搜索,安装,升级,卸载等一系列需要用户主动关注的显性操作,这些显性操作给用户带来了实质性的使用成本。轻量化、可快速达成消费者意图、可独立执行、完成单一功能的程序实体正成为新的趋势,例如小程序、App Clips、快应用等。根据阿拉丁指数的统计,全网小程序已经突破 700万个(注:数据来自于阿拉丁研究院发布的202
6、1 年度小程序互联网发展白皮书),远超 App 数量。大型应用开发者普遍向用户提供轻量化程序实体。在很多特定的使用场景下,小程序等轻量化程序实体的使用占比已超过 App,成为面向用户的主要触达方式。轻量化的程序实体所具备的“即用即走、无需安装卸载、持续更新”的特征,也推动了 App 基于搜索下载的“人找应用”的传统分发向“服务找人”的智慧分发的演进。App 遵循“搜索、下载、安装、使用”的模式,用户主动发现的成本高,拉新、促活、召回的全生命周期流程相对被动。轻量化的程序实体具有即用即走的体验,可通过各类终端的系统级智慧入口进行分发,甚至可以在三方 App 中分发,依托无所不在的入口流量和标签化
7、识别,向用户主动提供精准服务。配合 CPS(Cost Per Sale)等商业模式,可以为开发者带来更高的 ROI(Return of Investment)。为了更好的抓住机遇,应对万物互联所带来的一系列挑战,新的应用生态应该具备如下特征:5 单一设备延伸到多设备:应用一次开发就能在多个设备上运行,软件实体能够从单一设备转移到其他设备上,且多个设备间能够协同运行,给消费者提供全新的分布式体验。厚重应用模式到轻量化服务模式:提供轻量化的服务,较低的资源消耗,一步直达,快速完成消费者特定场景的任务。集中化分发到 AI 加持下的智慧分发:为消费者提供智慧场景服务,实现“服务找人”。纯软件到软硬芯协
8、同的 AI 能力:提供软硬芯协同优化的原生 AI 能力,全面满足应用高性能诉求。6 鸿蒙生态应用 开发核心概念 ChapterChapter 2 2 7 HarmonyOS应用:使用HarmonyOS SDK开发的应用程序,能够在华为终端设备(如:手机、平板等)上运行,其有两种形态:传统方式的需要安装的 App。轻量级,具备免安装,随处可及,服务直达,自由流转等关键特征的元服务。HarmonyOS 元服务:元服务是 HarmonyOS 面向万物互联时代提供的一种轻量级应用程序形态。它基于 HarmonyOS 平台开放能力开发,打包为 App Pack 形态,运行在HarmonyOS操作系统,由
9、HarmonyOS应用程序框架管理,具备随处可及、服务直达、跨设备等核心特征。万能卡片:HarmonyOS 系统定义的一种界面展示形式,它是 HarmonyOS 应用和元服务的一个可选组成部分,将重要信息或操作前置到卡片,以达到服务直达,减少操作层级的目的。万能卡片常用于嵌入到其他系统应用(桌面/负一屏)中作为其界面的一部分显示,并支持点击拉起应用或元服务。HarmonyOS 应用与元服务基于同一个鸿蒙系统技术栈开发,同属一个鸿蒙生态。开发者通过业务解耦将应用分解为若干元服务独立开发,按需根据场景组合成复杂应用。8 鸿蒙生态应用 核心技术理念 ChapterChapter 3 3 -1)一次开
10、发,多端部署-2)可分可合,自由流转-3)统一生态,原生智能 9 在万物智联时代重要机遇期,鸿蒙系统结合移动生态发展的趋势,提出了三大技术理念:一次开发,多端部署;可分可合,自由流转;统一生态,原生智能。图 3-1:核心技术理念 1)一次开发,多端部署“一次开发,多端部署”指的是一个工程,一次开发上架,多端按需部署。目的是为了支撑开发者高效地开发多种终端设备上的应用。为了实现这一目的,鸿蒙系统提供了几个核心能力,包括多端开发环境,多端开发能力以及多端分发机制。10 图 3-2:一次开发 多端部署 多端开发环境 HUAWEI DevEco Studio 是面向全场景多设备提供的一站式开发平台,支
11、持多端双向预览、分布式调优、分布式调试、多设备模拟、低代码可视化开发等能力,帮助开发者降低成本、提升效率、提高质量。HUAWEI DevEco Studio 提供的核心能力如下图所示:图 3-3:HUAWEI DevEco Studio 核心功能和特征 11 1.多端双向预览 在鸿蒙生态应用的开发阶段,因不同设备的屏幕分辨率、形状、大小等差异,开发者需要在不同设备上查看 UI 界面显示,确保实现效果与设计目标一致。传统的开发模式下,开发者需要获取大量不同的真机设备用于测试验证。HUAWEI DevEco Studio 提供了多种设备的双向预览能力,支持同时查看 UI 代码在多个设备上的预览效果
12、,并支持 UI 代码和预览效果的双向定位修改。2.分布式调试 鸿蒙生态应用具有天然的分布式特征,体现在同一个应用在多个设备之间会有大量的交互。开发过程中,对这些交互进行调试时,需要对每个设备分别建立调试会话,并且需要在多个设备之间来回切换,容易造成调试不连续、操作繁琐等问题。为了提升开发效率,HUAWEI DevEco Studio 提供了分布式调试功能,支持跨设备调试,通过代码断点和调试堆栈可以方便地跟踪不同设备之间的交互,用于定位多设备互动场景下的代码缺陷。图 3-4:分布式调试交互图 12 3.分布式调优 分布式应用的运行性能至关重要。在跨端迁移场景中,需要应用在目标设备上快速启动,以实
13、现和原设备之间的无缝衔接;在多端协同场景中,需要应用在算力和资源不同的多个设备上都能高效运行,以获得整体的流畅体验。以往开发者在分析分布式应用的性能问题时,需要单独查看每个设备的性能数据,并手动关联分析这些数据,操作繁琐,复杂度高。HUAWEI DevEco Studio 提供了分布式调优功能,支持多设备分布式调用链跟踪、跨设备调用堆栈缝合,同时采集多设备性能数据并进行联合分析。图 3-5:多设备联合分析 4.多设备模拟 移动应用开发时需要使用本地模拟器来进行应用调试,实现快速开发的目的。鸿蒙生态应用需要运行在多种不同类型的设备上,为此 HUAWEI DevEco Studio 提供了不同类型
14、的终端设备模拟,支持开发者在多个模拟设备上进行开发调试,降低门槛、节约成本。13 5.低代码可视化开发 低代码开发提供 UI 可视化开发能力,支持自由拖拽组件和可视化数据绑定,可快速预览效果,所见即所得。通过拖拽式编排、可视化配置的方式,帮助开发者减少重复性的代码编写,快速地构建多端应用程序。低代码开发的产物如组件、模板等可以被其他模块的代码引用,并且能通过跨工程复用,支持开发团队协同完成复杂应用的开发。多端开发能力 应用如需在多个设备上运行,需要适配不同的屏幕尺寸和分辨率、不同的交互方式(如触摸和键盘等)、不同的硬件能力(如内存差异和器件差异等),开发成本较高。因此,多端开发能力的核心目标是
15、降低多设备应用的开发成本。为了实现该目标,鸿蒙系统提供了以下几个核心能力,支持多端 UI 适配,交互事件归一,设备能力抽象,帮助开发者降低开发与维护成本,提高代码复用度。1.多端 UI 适配 不同设备屏幕尺寸、分辨率等存在差异,鸿蒙系统将对屏幕进行逻辑抽象,包括尺寸和物理像素,并提供丰富的自适应/响应式的布局和视觉能力,方便开发者进行不同屏幕的界面适配。屏幕逻辑抽象:鸿蒙系统提供虚拟像素 vp(virtual pixel)对分辨率进行抽象,不同设备的系统在底层将物理像素转化成虚拟像素,为应用开发者提供统一单位。不同设备的尺寸存在差异,鸿蒙系统根据设备的屏幕水平宽度,抽象和定义了四种尺寸:超小(
16、xs)、小(sm)、中(md)、大(lg)。这四种抽象后的屏幕尺寸与日常使用的设备屏幕类型有一 14 定的对应关系,例如:超小对应智能穿戴设备,小对应手机和折叠屏折叠态,中对应折叠屏展开态和平板,大对应智慧屏。开发者可面向应用运行的目标设备进行屏幕类型的适配。图 3-6:尺寸抽象化 布局:鸿蒙系统提供的布局主要分为自适应布局和响应式布局。自适应布局是当外部容器大小发生变化时,容器内元素可以根据相对关系自动变化以适应外部容器变化的布局能力。相对关系包含占比、固定宽高比、显示优先级等。当前自适应布局能力主要有 7 种:拉伸能力、均分能力、占比能力、缩放能力、延伸能力、隐藏能力、折行能力。响应式布局
17、是当显示空间大小发生变化时,布局可以根据预设断点、栅格或特定的特征(如屏幕方向、窗口宽高等)进行自动切换。当前响应式布局能力主要有 3 种:断点、媒体查询、栅格布局。鸿蒙系统将响应式布局能力下沉到默认组件的基础属性中,比如网格、列表和轮播组件等,支持自动增加显示列数,以便充分利用屏幕宽度,节省应用开发工作量。视觉:鸿蒙系统提供的视觉样式能力,包括分层参数、多态组件和主题。2.交互事件归一 事件归一抽象:不同设备间的交互方式等存在差异,如触摸、键盘、鼠标、语音、手写笔等,鸿蒙系统将不同设备的输入映射成归一交互事件,从而简化开发者适配逻辑。15 以缩放交互为例,通过多指触控的张合来完成缩放动作,在
18、多设备场景下,缩放交互会出现多种不同的操作输入方式,如表 3-1 所示。为了让应用更容易的支持不同的交互方式,鸿蒙系统提供归一的缩放交互事件。表 3-1:缩放交互的规则 操作方式 触屏双指捏合交互 键盘 Ctrl 键+鼠标滚轮交互 键盘 Ctrl 键+“+/-”键交互 触控板双指捏合交互 表冠旋转交互 上报事件 触屏双指捏合事件 按键+滚轮组合事件 按键组合点击事件 触控板双指捏合事件 表冠旋转事件 组件归一响应:当应用部署在不同设备上供用户使用时,需要支持多种 I/O 设备,界面呈现出相应的状态为用户提供正确的视觉引导。例如触摸时显示按压状态,鼠标特有的悬停状态,键盘走焦状态。鸿蒙系统默认提
19、供多种交互方式的组件实现,方便开发者支持多种输入方式。3.设备能力抽象 不同设备间的软、硬件能力等存在差异,如设备是否具备定位能力、是否具备摄像头、是否具备蓝牙功能等,鸿蒙系统需要对设备能力进行逻辑抽象,并提供接口来查询设备是否支持某一能力,方便开发者进行不同软、硬件能力的功能适配。在鸿蒙系统中,使用SystemCapability(简写为 SysCap)定义每个部件对应用开发者提供的系统软硬件能力。应用开发者基于统一的方式访问不同设备的能力。16 图 3-7:API、SystemCapability、部件和设备的关系 多端分发机制 如果需要开发多设备上运行的应用,一般会针对不同类型的设备多次
20、开发并独立上架。开发和维护的成本大,为了解决这个问题,鸿蒙系统提供了“一次开发,多端部署”的能力,开发者开发多设备应用,只需要一套工程,一次打包出多个 HAP,统一上架,即可根据设备类型按需进行分发。除了可以开发传统的应用,开发者还可以开发元服务。元服务是一种面向未来的服务提供方式,具有独立入口的、免安装的、可为用户提供一个或多个便捷服务的应用程序形态。鸿蒙系统为元服务提供了更多的分发入口,方便用户获取,同时也增加了元服务露出的机会。17 1.多设备按需分发 鸿蒙系统提供了两种模式帮助开发者基于“一次开发,多端部署”能力分发应用和元服务到不同设备上。图 3-8:多设备按需分发的两种模式 模式
21、1:应用或服务的 UI 自适应不同尺寸的设备屏幕,并且在不同设备的功能相同,可以实现多设备共享一个 HAP 包。这种场景下建议开发者通过一个模块来开发,并配置该模块支持多设备,然后再编译构建生成一个 HAP,分发到不同类型的设备上运行。模式 2:应用或服务的 UI、功能在不同设备间存在差异,无法实现 HAP 包多设备归一。可根据实际情况设置不同模块适用的设备类型,编译构建多个 HAP 包,一起上架。HUAWEI AppGallery Connect 会自动提取 HAP 中的设备类型的配置信息,为对应的设备自动分发正确的 HAP 包组合。18 2.多入口按需分发 鸿蒙系统为元服务提供了更多的分发
22、入口,基于场景和用户意图拉起元服务,实现“服务直达”。鸿蒙生态提供的丰富入口如下图所示:图 3-9:多入口按需分发 2)可分可合,自由流转 元服务是鸿蒙系统提供的一种全新的应用形态,具有独立入口,用户可通过点击、碰一碰、扫一扫等方式直接触发,无需显式安装,由程序框架后台静默安装后即可使用,可为用户提供便捷服务。传统移动生态下,开发者通常需要开发一个原生应用版本,如果提供小程序给用户,往往需要开发若干个独立的小程序。鸿蒙生态下,鸿蒙原生支持元服务开发,开发者无需维护多套版本,通过业务解耦将应用分解为若干元服务独立开发,按需根据场景组合成复杂应用。19 元服务基于鸿蒙系统 API 开发,支持运行在
23、 1+8+N 设备上,供用户在合适的场景、合适的设备上便捷使用。元服务是支撑可分可合,自由流转的轻量化程序实体,帮助开发者的服务更快触达用户。具备如下特点:触手可及:元服务可以在服务中心发现并使用,同时也可以基于合适场景被主动推荐给用户使用,例如用户可在服务中心和小艺建议中发现系统推荐的服务。服务直达:元服务无需安装卸载,“秒开体验”,即点即用,即用即走。万能卡片:支持用户无需打开元服务便可获取服务内重要信息的展示和动态变化,如天气、关键事务备忘、热点新闻列表。自由流转:元服务支持运行在多设备上并按需跨端迁移,或者多个设备协同起来给用户提供良好的体验。例如手机上未完成的邮件,迁移到平板继续编辑
24、,手机用作文档翻页和批注,配合智慧屏完成分布式办公;例如分布式游戏场景,手机可作为手柄,与智慧屏配合玩游戏,获得新奇游戏体验。可分可合 在开发态,开发者通过业务解耦,把不同的业务拆分为多个模块。在部署态,开发者可以将一个或多个模块自由组合,打包成不同的 App Pack 独立上架。在分发运行态,单个 HAP 作为元服务分发满足用户单一使用场景,也可以多个 HAP 组合为应用分发满足用户更加复杂的使用场景。20 图 3-10:打包上架模式 自由流转 传统应用只能在单个设备内运行,当用户有多个设备,且要完成多个任务时,则需要在多个设备间来回切换。因此应用能够在设备之间流转,不间断给用户提供服务的能
25、力就变得非常重要。鸿蒙系统提供了自由流转的能力,使得开发者可以方便地开发出跨越多个设备的应用,用户也能够方便地使用这些功能。自由流转可分为跨端迁移和多端协同两种情况。他们分别是时间上的串行交互和时间上的并行交互。自由流转不仅带给用户全新的交互体验,也为开发者搭建了一座从单设备时代通往多设备时代的桥梁。关于跨端迁移和多端协同详细说明,会在第七章中详细展开。21 3)统一生态,原生智能 统一生态 统一生态具有愿景上的意义,打造智能联接,共建智能世界。从设备角度来说,基于鸿蒙可以开发多种全场景终端设备;从应用角度来说,可以为鸿蒙开发多种应用,运行在全场景设备上,满足智能家居、智慧办公等全场景使用要求
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 鸿蒙 生态 应用 开发 白皮书
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【宇***】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【宇***】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。