收藏 分销(赏)

2023鸿蒙生态应用安全技术白皮书.pdf

上传人:Stan****Shan 文档编号:1266048 上传时间:2024-04-19 格式:PDF 页数:129 大小:7.60MB
下载 相关 举报
2023鸿蒙生态应用安全技术白皮书.pdf_第1页
第1页 / 共129页
2023鸿蒙生态应用安全技术白皮书.pdf_第2页
第2页 / 共129页
2023鸿蒙生态应用安全技术白皮书.pdf_第3页
第3页 / 共129页
2023鸿蒙生态应用安全技术白皮书.pdf_第4页
第4页 / 共129页
2023鸿蒙生态应用安全技术白皮书.pdf_第5页
第5页 / 共129页
点击查看更多>>
资源描述

1、 V1.0 O1 O2 O3 万物互联时代应用开发的机遇?挑战和趋势?蒙生态应用核心技术理念 7 19 1)?次开发,多端部署 2)可分可合,自由流转 3)统?生态,原生智能 16?蒙生态应用开发能力全景 2)?蒙开发套件 3)三方库 4)开发者支持平台 26 45 44 CONTENT 1)赋能套件 24 O4 O5 O6?效开发与测试 1)典型开发场景 3)ArkTS 语言 4)ArkUI 框架 4?50 4?5)用户程序框架 6)SDK 7)?成开发环境 61 6?64 8)测试工具?统?上架与多端分发 1)快速上架 2)应用分发 3)服务分发?1?5 自由流转与分布式运行环境 1)价值

2、与架构定义 2)跨端迁移 3)多端协同 104 10?106 2)设计 4?全方位运维分析 O?全场景案例参考 O?附录:术语 O7 2 万?互?时代应?开发?挑战和?势 Chapter 1 3 经过十多年的发展,传统移动互联网的增长红利已渐见?万物互联时代正在开启,应用的设备底座将从几十亿手机扩展到数百亿 IoT 设备?GSMA?测到 2025 年,全球物联网终端连接数量将达 246 亿个,其中消费物联网终端连接数量将达 110 亿个(注:数据来自于全球移动通信系统协会发布的?2020 年移动经济?报告)?IDC?计到 2025 年,中国物联网总连接量将达到 102.7 亿个(注:数据来自于

3、 IDC 发布的?中国物联网连接规模?测,20202025?报告)?全新的全场景设备体?,正深入改变消费者的使用习惯?同时应用开发者也?临设备底座从手机单设备到全场景多设备的转变,通过全场景多设备作为全新的底座,为消费者带来万物互联时代更为?效?便捷的体?新的场景同时也带来了新的挑战?开发者不仅?要支持更加多样化的设备,还?要支持跨设备的协作?不同设备类型意味着不同的传感器能力?硬件能力?屏幕尺寸?操作系统和开发语言,还意味着差异化的交互方式?同时跨设备协作也让开发者?临分布式开发带来的各种复杂性,例如跨设备的网络通信?数据同步等?若采取传统开发模式,适配和管理工作量将?常巨大?当前移动应用开

4、发中遇到的主要挑战包括:?针对不同设备上的不同操作系统,重复开发,维护多套版本?多种语言栈,对人员技能要求?多种开发框架,不同的编程范式?命令式编程,?关注细节,变更?繁,维护成本?与此同时,AI时代全?来临,在PC 互联网到移动互联网到智能化终端演进过程中,AI计算主要在云端数据中心进行,?常依赖网络,具有?定的时延,且数据传输的安全性?私密性不能得到有效保证?随着人们对交互和信息获取的智能化要求越来越?,移动设备的计 4 算能力越来越强,在设备侧就能提供 AI 的相关能力,例如自然语言交互?环境智能感知?图像识别等?如何快速地使用设备侧的强大 AI 能力,使自己的应用更加智能化,进而更好的

5、服务消费者,也是开发者?临的全新挑战?移动终端上的应用生态发展到今天也?临着变?传统厚重的App,整体体?好,功能?全,但开发成本?周期长,且存在搜索,安装,升级,卸载等?系列?要用户主动关注的显性操作,这些显性操作给用户带来了实质性的使用成本?轻量化?可快速达成消费者意图?可独立执行?完成单?功能的程序实体正成为新的趋势,例如小程序?App Clips?快应用等?根据阿拉丁指数的统计,全网小程序已经突破 700 万个(注:数据来自于阿拉丁研究院发布的?2021 年度小程序互联网发展白皮书?),远超 App 数量?大型应用开发者普遍向用户提供轻量化程序实体?在很多特定的使用场景下,小程序等轻量

6、化程序实体的使用占比已超过 App,成为?向用户的主要触达方式?轻量化的程序实体所具备的“即用即走?无?安装卸载?永远最新”的特征,也推动了 App 基于搜索下载的“人找应用”的传统分发向“服务找人”的智?分发的演进?App 遵循“搜索?下载?安装?使用”的模式,用户主动发现的成本?,拉新?促活?召回的全生命周期流程相对被动?轻量化的程序实体具有即用即走的体?,可通过各类终端的系统级智?入口进行分发,甚至可以在三方 App 中分发,依托无所不在的入口流量和标签化识别,向用户主动提供精准服务?配合 CPS(Cost Per Sale)等商业模式,可以为开发者带来更?的 ROI(Return of

7、 Investment)?为了更好的抓住机遇,应对万物互联所带来的?系列挑战,新的应用生态应该具备如下特征:5?单?设备延伸到多设备:应用?次开发就能在多个设备上运行,软件实体能够从单?设备转移到其他设备上,且多个设备间能够协同运行,给消费者提供全新的分布式体?厚重应用模式到轻量化服务模式:提供轻量化的服务,最小化资源消耗,?步直达,快速完成消费者特定场景的任务?中化分发到 AI 加持下的智?分发:为消费者提供智?场景服务,实现“服务找人”?纯软件到软硬芯协同的 AI能力:提供软硬芯协同优化的原生 AI能力,全?满足应用?性能诉求?6?应?心技?念 Chapter 2 1-1)?次开发,多端部

8、署-2)可分可合,自由流转-3)统?生态,原生智能 7 在万物智联时代重要机遇期,?蒙系统结合移动生态发展的趋势,提出了三大技术理念:?次开发,多端部署;可分可合,自由流转;统?生态,原生智能?图 2-1:核心技术理念 1)?开发,多?“?次开发,多端部署”指的是?套代码,?次开发上架,多端按?部署?目的是为了支?开发者?效地开发多种终端设备上的应用?为了实现这?目的,?蒙系统提供了几个核心能力,包括多端开发环境,多端开发能力以及多端分发机制?8 图 2-2:?次开发 多端部署 多?开发?境 HUAWEI DevEco Studio 是?向全场景多设备提供的?站式开发平台,支持多端双向实时?览

9、?分布式调优?分布式调测?超级终端模拟?低代码可视化开发等能力,帮助开发者降低成本?提升效率?提?质量?HUAWEI DevEco Studio 提供的核心能力如下图所示:图 2-3:HUAWEI DevEco Studio 核心功能和特征 1.多?双向?在?蒙生态应用的开发阶段,因不同设备的屏幕分辨率?形状?大小等差异,开发者?要在不同设备上查看界?UI 显示,确保实现效果与设计目标?致?传统的开发模式下,开 9 发者?要获取大量不同的真机设备用于测试?证?HUAWEI DevEco Studio 提供了多种设备的双向?览能力,支持同时查看 UI 代码在多个设备上的?览效果,并支持 UI 代

10、码和?览效果的双向定位修改?2.分布式?蒙生态应用具有天然的分布式特征,体现在同?个应用在多个设备上会有大量的交互?开发过程中,对这些交互进行调试时,?要对每个设备分别建立调试会话,并且?要在多个设备之间来回切换,容易造成调试不连续?操作繁?等问?为了提升开发效率,HUAWEI DevEco Studio 提供了分布式调试功能,支持跨设备调试,通过代码断点和调试堆栈可以方便地跟踪不同设备之间的交互,用于定位多设备互动场景下的代码缺陷?图 2-4:分布式调试交互图 3.分布式?优 分布式应用的运行性能至关重要?在跨端迁移场景中,?要应用在目标设备上快速启动,以实现和原设备之间的无缝衔接;在多端协

11、同场景中,?要应用在算力和资源不同的多个设 10 备上都能?效运行,以获得整体的流畅体?以往开发者在分析分布式应用的性能问?时,?要单独查看每个设备的性能数据,并手动关联分析这些数据,操作繁?,复杂度?HUAWEI DevEco Studio 提供了分布式调优功能,支持多设备分布式调用链跟踪?跨设备调用堆栈缝合,同时采?多设备性能数据并进行联合分析?图 2-5:多设备联合分析 4.?拟 移动应用开发时?要使用本地模拟器来进行应用调试,实现快速开发的目的?蒙生态应用?要运行在多种不同类型的设备上,为此 HUAWEI DevEco Studio 提供了不同类型的终端模拟,支持开发者在多个模拟终端上

12、进行开发调试,降低门?节约成本?同时,多个模拟终端?真机设备也可以自由地组成超级终端,进?步降低开发者获取分布式调测环境的?度?11 5.低代?可?化开发 低代码开发提供 UI 可视化开发能力,支持自由拖拽组件和可视化数据绑定,可快速?览效果,所见即所得?通过拖拽式编排?可视化配置的方式,帮助开发者减少重复性的代码编写,快速地构建多端应用程序?低代码开发的产物如组件?模板等可以被其他模块的代码引用,并且能通过跨工程复用,支持开发团队协同完成复杂应用的开发?多?开发?力 应用如?在多个设备上运行,?要适配不同的屏幕尺寸和分辨率?不同的交互方式(如触摸和键盘等)?不同的硬件能力(如内存差异和外设差

13、异等),开发成本较?因此,多端开发能力的核心目标是降低多设备应用的开发成本?为了实现该目标,?蒙系统提供了以下几个核心能力,支持界?和业务逻辑代码复用,帮助开发者降低开发与维护成本,提?代码复用度?1.多?UI?不同设备屏幕尺寸?分辨率等存在差异,系统?要对屏幕进行逻辑抽象,包括尺寸和物理像素,并提供丰富的自适应/响应式的布局和视觉能力,方便开发者进行不同屏幕的界?适配?屏幕逻辑抽象:?蒙系统提供虚拟像素 vp(virtual pixel)对分辨率进行抽象,为应用开发者提供统?单位,不同设备的系统会在显示时,在底层进行像素转化?不同设备的尺寸存在差异,?蒙操作系统根据设备的屏幕水平宽度,抽象和

14、定义了四种尺寸:超小(xs)?小(sm)?中(md)?大(lg)?这四种抽象后的屏幕尺寸与日常使用的设备屏幕类型有?12 定的对应关系,例如:超小对应智能穿戴设备,小对应手机和折叠屏,中对应平板,大对应PC 与智?屏?开发者可?向应用运行的目标设备进行所属屏幕类型的适配?图 2-6:尺寸抽象化 布局:?蒙系统提供的布局主要分为自适应布局和响应式布局?自适应布局是当外部容器大小发生变化时,容器内元素可以根据相对关系自动变化以适应外部容器变化的布局能力?相对关系包含占比?固定宽?比?显示优先级等?当前自适应布局能力主要有 7 种:拉伸能力?均分能力?占比能力?缩放能力?延伸能力?隐藏能力?折行能力

15、?自适应布局能力可以实现界?显示随外部容器大小连续变化?响应式布局是当外部容器大小发生变化时,元素可以根据断点?栅格或特定的特征(如屏幕方向?窗口宽?等)自动变化以适应外部容器变化的布局能力?当前响应式布局能力主要有 3 种:断点?媒体查询?栅格布局?视觉:?蒙系统提供的视觉样式能力,包括分层参数?多态组件和主?2.事件交互归?不同设备间的交互方式等存在差异,如触摸?键盘?标?语?手写笔等,系统?要对不同输入方式进行统?处理,向开发者提供归?的逻辑交互事件?13 以缩放交互为例,通过多指触控的张合来完成缩放动作,在多设备场景下,缩放交互会出现多种不同的操作输入方式?为了让应用更好的支持这些缩放

16、交互,?蒙系统提供如下统?的缩放交互规则?表 2-1:缩放交互的规则 操作方式 触屏双指?合交互 键盘 Ctrl 键+?标滚轮交互 键盘 Ctrl 键+“+/-”键交互 触控板双指?合交互 表冠旋转交互 上报事件 触屏双指?合事件 按键+滚轮组合事件 按键组合点击事件 触控板双指?合事件 表冠旋转事件 3.?备?力抽?不同设备间的软?硬件能力等存在差异,如设备是否具备定位能力?是否具备摄像头?内存从百 KiBGiB 等,系统?要对设备能力进行逻辑抽象,并提供接口来查询设备是否支持某?能力,方便开发者进行不同软?硬件能力的功能适配?在?蒙系统中,使用SystemCapability(简写为 Sy

17、sCap)定义每个部件对应用开发者提供的系统软硬件能力?应用开发者基于统?的方式访问不同设备的能力?14 图 2-7:API?SystemCapability?部件和设备的关系 多?分发?制 如果?要开发多设备上运行的应用,?般会针对不同类型的设备多次开发并独立上架?开发和维护的成本大,为了解决这个问?,?蒙系统提供了“?次开发,多端部署”的能力,开发者开发多设备应用,只?要?套代码,?次打包出多个 HAP,统?上架,即可根据设备类型按?进行分发?除了可以开发传统的应用,开发者还可以开发原子化服务?原子化服务是?种?向未来的服务提供方式,具有独立入口的?免安装的?可为用户提供?个或多个便捷服务

18、的应用程序形态?蒙系统为原子化服务提供了更多的分发入口,方便用户获取,同时也增加了原子化服务?出的机会?15 1.多?备按?分发?蒙系统提供了两种模式帮助开发者基于“?次开发,多端部署”能力分发应用和原子化服务到不同设备上?图 2-8:多设备按?分发的两种模式?模式 1:应用或服务的 UI 自适应不同尺寸的设备屏幕,并且在不同设备的功能相同,可以实现多设备共享?个 HAP 包?这种场景下建议开发者通过?个模块来开发,并配置该模块支持多设备,然后再编译构建生成?个 HAP,分发到不同类型的设备上运行?模式 2:应用或服务的 UI?功能在不同设备间存在差异,无法实现 HAP 包多设备归?可根据实际

19、情况设置不同模块适用的设备类型,编译构建多个 HAP 包,?起上架?HUAWEI AppGallery Connect 会自动提取 HAP 中的设备类型的配置信息,为对应的设备自动分发正确的 HAP 包组合?16 2.多入口按?分发?蒙系统为原子化服务提供了多设备?多入口的分发能力,基于场景和用户意图拉起原子化服务,实现“服务直达”?蒙生态提供的丰富入口如下图所示:图 2-9:多入口按?分发 2)可分可合,?原子化服务是?蒙系统提供的?种全新的应用形态,具有独立入口,用户可通过点击?碰?碰?扫?扫等方式直接触发,无?显式安装,由程序框架后台?安装后即可使用,可为用户提供便捷服务?传统移动生态下

20、,开发者通常?要开发?个原生应用版本,如果提供小程序给用户,往往?要开发若干个独立的小程序?蒙生态下,?蒙原生支持原子化服务开发,开发者无?17 维护多套版本,通过业务解?将应用分解为若干原子化服务独立开发,按?根据场景组合成复杂应用?原子化服务基于?蒙系统 API 开发,支持运行在 1+8+N 设备上,供用户在合适的场景?合适的设备上便捷使用?原子化服务是支?可分可合,自由流转的轻量化程序实体,帮助开发者的服务更快触达用户?具备如下特点:?触手可及:原子化服务可以在服务中心发现并使用,同时也可以基于合适场景被主动推荐给用户使用,例如用户可在服务中心和小艺建议中发现系统推荐的服务?服务直达:原

21、子化服务无?安装卸载,“秒开体?”,即点即用,即用即走?服务卡片:支持用户无?打开原子化服务便可获取服务内重要信息的展示和动态变化,如天气?关键事务备忘?热点新闻列表?自由流转:原子化服务支持运行在多设备上并按?跨端迁移,或者多个设备协同起来给用户提供最优的体?例如手机上未完成的邮件,迁移到平板继续编辑,手机用作文档翻?和批注,配合智?屏完成分布式办公;例如分布式游戏场景,手机可作为手柄,与智?屏配合玩游戏,获得新奇游戏体?可分可合 在开发态,开发者通过业务解?,把不同的业务拆分为多个模块?在部署态,开发者可以将?个或多个模块自由组合,打包成?个 App Pack 统?上架?在分发运行态,每个

22、 HAP 18 都可以单独分发满足用户单?使用场景,也可以多个 HAP 组合分发满足用户更加复杂的使用场景?开发者可以在以下两种模式中选择,进行?蒙生态应用?原子化服务的打包和上架?图 2-10:两种打包上架模式?模式?:打包成多个 App Pack,不同 App Pack 的包名是不?样的,每个 App Pack都?要单独上架?在运行态,应用和服务的生命周期完全独立?模式二:打包成?个 App Pack,App Pack 里?的 HAP 包名相同,统?上架?在运行态,应用生命周期完全共享?传统应用只能在单个设备内运行,当用户有多个设备,且要完成多个任务时,则?要在多个设备间来回切换?因此应用

23、能够在设备之间流转,不间断给用户提供服务的能力就变得?常重要?19?蒙系统提供了自由流转的能力,使得开发者可以方便地开发出跨越多个设备的应用,用户也能够方便地使用这些功能?自由流转可分为跨端迁移和多端协同两种情况?它们分别是时间上的串行交互和时间上的并行交互?自由流转不仅带给用户全新的交互体?,也为开发者搭建了?座从单设备时代通往多设备时代的桥梁?关于跨端迁移和多端协同详细说明,会在第六章中详细展开?3)?,原?由于应用仅能运行在支持其运行环境的操作系统上,开发者要使其应用能运行在多操作系统上,则?要对不同的系统进行单独的开发或者适配?为了降低开发成本?提?代码复用率?减少多个平台重复开发工作

24、量,业界推出了很多跨平台三方框架?20 图 2-11:业界跨平台三方框架使用率(数据来源于 statista)?蒙系统?导应用生态统?多方共建,支持开发者根据自身的业务场景,自由选择原生框架?三方跨平台框架来进行?蒙生态应用开发?同时为了满足日益增长的应用智能化诉求,?蒙系统内置了多层次?丰富的 AI 开放能力,对开发者提供简洁易用的 API,帮助开发者快速?成 API,助力应用智能化?蒙系统支持业界主流跨平台开发框架,通过多层次的开放能力提供统?接入标准,实现三方框架快速接入,支?快速丰富?蒙生态应用?原子化服务?图 2-12:统?生态 原?蒙系统提供开箱即用的原生 AI 能力,降低智能应用

25、的开发门?,帮助开发者快速实现应用智能化?同时也提供软硬芯协同优化的系统级推理框架并?留扩展,满足开发者的?阶性能优化诉求?21 图 2-13:AI 能力开放 AI 能力开放具体包括:服务能力开放层:为原子化服务提供多样化?场景化的智能入口,让开发者的服务能够更加精准地触达用户?应用能力开放层:?向应用开发者提供的简单易用?功能强大的场景化 AI 能力?自然语言交互:包含 ASR?TTS?意图识别?语种检测?文本翻译,分词?词性标注?实体识别?关键字提取等?智?语?:可视可说,提供通过说出界?文字?图标?角标信息即可轻松操控界?的能力?计算视觉:包含图片识别?文本识别?视?内容分析?人脸识别?

26、人体检测等常用的能力?情景感知:提供对设备使用场景的智能感知能力,例如地理围栏?快照等?芯片能力开放层:向应用开发者开放芯片 AI 计算(含 NPU/CPU/GPU 多计算单元)能力,兼容 TensorFlow?Caffe?MindSpore?Paddle?ONNX 等主流框架?同时提供统?的推理框架 MindSpore Lite 开放接口,开发者无?单独?置推理框架,减少应用?服务 22 包大小?MindSpore Lite 是?个极速?极智?极简的 AI 引擎,为用户提供端到端的解决方案?其具有三大优势:?极致性能:?效的内核算法和汇编级优化,最大化发挥硬件算力,最小化推理时延和功耗?轻量

27、化:提供超轻量的解决方案,支持模型量化压缩,模型更小跑得更快,使能 AI模型极限环境下的部署执行?效部署:支持 MindSpore/TensorFlow Lite/Caffe/Onnx 模型,提供模型压缩?数据处理等能力,统?训练和推理 IR(Intermediate Representation),方便用户快速部署?23 Chapter 3-1)赋能套件-2)?蒙开发套件-3)三方库-4)开发者支持平台?应?开发?力全景图 24 围绕开发者旅程,?蒙系统为开发者提供了端到端的开发能力支持?如下图所示,?蒙系统为开发者提供了赋能套件?蒙开发套件?三方库?开发者支持平台?具体能力全景图如下图所示

28、:图 3-1:?蒙生态应用开发能力全景图 1)?套件 开发者了解和学习?蒙系统的各类资源,覆盖开发者全旅程,内容包含 Codelabs?视?课程?技术文章?指南?UX 设计资源与指南?API 参考?Sample Code 与 FAQ?25 图 3-2:赋能套件全景图 Codelabs:以教学为目的的代码样例及详细的开发指导,帮助开发者?步步地完成指定场景的应用开发并掌握相关知识?Codelabs 将最新的?蒙生态应用开发技术与典型场景结合,让开发者快速地掌握开发?质量应用的方法?同时支持互动式操作,通过文字?代码和效果联动为开发者带来更佳的学习体?视?课程:基于真实的开发场景,提供向导式学习,

29、多维度?合课程等内容,给开发者提供全新的学习体?技术文章:针对新发布特性及热点特性提供详细的技术解析和开发优秀实践?开发?测试及上架指南:提供系统能力概述?快速入门,用于指导开发者进行场景化的开发?指南涉及到的知识点包括必要的背景知识?符合开发者实际开发场景的操作任务流(开发流程?开发步?调测?证)以及常见问?等?UX 设计资源与指南:提供开发?蒙生态应用所?的 UX 设计规范?指导文档以及推荐的设计资源,满足各种场景的设计要求,可以帮助开发者设计出体?致的?蒙生态应用?API 参考:?向开发者提供?蒙系统开放接口的全?,供开发者了解具体接口使用方法?API 参考详细地描述了每个接口的功能?使

30、用限制?参数名?参数类型?参数含义?取值范围?权限?注意事?错误码及返回值等?Sample Code:?向不同类型的开发者提供的?蒙生态应用开发优秀实践,每个Sample Code 都是?个可运行的工程,为开发者提供实例化的代码参考?26 FAQ:开发者常见问?的总结,开发者可以通过 FAQ 更?效地解决常见问?FAQ 会持续刷新,及时呈现最新的常见问?具体的内容请访问 https:/ OS 开放能力?通过?蒙开发套件,开发者可以?效开发?蒙生态应用?原子化服务?图 3-3:?蒙开发套件全景图?套件 HarmonyOS Design 是?向万物互联的设计系统,为用户带来全新交互体?其?承万物归

31、?,和谐共生,衍生万物的设计理念?设计套件?盖全?的全场景设计规范?丰富的设计资源,以及设计工具,帮助开发者提升设计和开发效率?27 开发套件 开发者在应用开发过程中使用到的产品?合,包含DevEco Studio以及DevEco Studio?成的性能调优?设备模拟?命令行工具和 SDK?图 3-4:开发套件全景图 DevEco Studio:?蒙生态应用?原子化服务开发配套的?成开发环境(IDE),提供了工程管理?代码编辑?界?览?编译构建?代码调试等基础功能,同时还?成了性能调优工具?设备模拟工具?命令行工具等帮助开发者解决特定?域的问?SDK:?成在 DevEco Studio 中,包

32、含开发者可以使用的 API 定义以及调试编译等基础的工具链?请访问 https:/ 获取最新的 DevEco Studio 以及 SDK?套件 包括测试标准和测试工具两部分?28 1.?准 覆盖?蒙生态应用性能?功耗?稳定性?兼容性?UX?安全?流转?游戏等测试规范,帮助开发者解决测什么的问?表 3-1:测试标准覆盖范围 测试标准名称 测试标准覆盖范围说明 性能测试 任务启动时间?界?刷新帧率?应用内存占用及 CPU 占用等?功耗测试 后台长?任务/托管任务场景功耗?后台硬件器件资源/软件系统资源占用场景功耗及分布式资源占用场景功耗?稳定性测试 长时间运行故?率(App Crash/App F

33、reeze)?长时间运行内存泄漏及长时间运行踩内存等异常场景?兼容性测试 应用和 OS 兼容?应用升级兼容?应用交互兼容及应用分布式兼容?UX 测试 应用 UX 规范?致性?控件截断?文字截断?布局变形?图片模糊?边及白块等 UX 显示异常?安全测试 基础安全?用户隐私?权限管理及跨设备安全?流转测试 流转交互?致性?跨端迁移功能及多端协同功能?游戏测试 游戏?效?消息免打扰?帧率?屏幕点时延?GPU 使用率及后壳温度等?29 2.?工具 提供?蒙生态应用开发?调试?单元测试?成测试?上架测试等各开发阶段所?的测试工具?,支持手机?折叠屏?平板?智?屏?手表?箱等 1+8+N 设备,帮助开发者

34、全?效测试?图 3-5:?蒙生态应用测试工具概览 典型测试工具能力简介见下表:表 3-2:典型测试工具能力简介 测试能力名称 简介 专?测试套件 覆盖性能?功耗?稳定性?兼容性?UX?安全共 6?专?自动化测试用例,基于测试标准实现自动化,并以测试服务化方式提供?测试框架 包括单元测试框架和 UI 测试框架,并支持 ArkTS 语言,单元测试框架提供支?用例运行的基础能力,UI 测试框架提供 UI控件查找?点击?检视?按键注入等模拟用户操作的 API?30 测试能力名称 简介 性能测试工具 应用性能能效调优和测试工具平台;提供测试过程中实时采?FPS?RAM?CPU?GPU 等性能数据的采?能

35、力,同时提供性能能效数据分析可视化分析等能力?稳定性测试工具 应用 UI 随机压测工具,提供 UI 随机事件注入?控件级事件?序或随机注入?用户操作录制回放?异常日志捕获?可视化报告生成等应用稳定性测试基础能力?分布式设备录制回放 支持多设备多模输入操作录制,生成基于控件的脚本,开发者添加检查点后形成自动化测试用例脚本,快速自动执行?应用与服务体检 本地速测工具,支持兼容性?设计约束?性能等专?测试,无?编写用例;?成于 DevEco Studio?键式测试?云测平台 云测平台提供性能?功耗?稳定性?兼容性?UX?安全自动化测试能力,支持流转?服务卡片等?蒙系统关键特征自动化测试,支持华为 1

36、+8+N 多设备运行?测试套件获取途径如下表:表 3-3:测试套件获取途径 名称 获取途径 测试套件 华为官网访问路径:https:/ 社区官网访问路径:https:/ 名称 获取途径 cn/application-dev/application-test?套件 主要包括由 HUAWEI AppGallery Connect 提供的上架分发测试和运维分析两大能力?1.上?分发?力 提供多种上架分发测试能力,满足开发者在不同阶段的上架分发测试诉求?具体如下表介绍:表 3-4:上架分发测试能力介绍 分发阶段 简介 云测试/调试 快速获取目标机型,便捷远程测试,?脚本?低成本,通过自动化测试快速发现

37、应用的兼容性?性能?稳定性?功耗?安全等问?,出具详细报告,复现与修复应用问?开放式测试 可以让开发者的应用在正式发布给所有用户前,?向特定用户群组发布测试版本?参与测试的用户可以向开发者反?,帮助开发者及时发现技术问?或用户体?问?,以在应用/服务正式上架前完成改进,从而在此过程中最大限度地降低对用户的影响?全网上架 开发者在开发测试?证完成后,正式提交应用上架申请,审核人员审核通过后应用就会变为“已上架”状态,用户可在设备上搜索到该应用/服务?32 分发阶段 简介 分阶段发布 在当前上架版本为全网发布时,开发者可以采用分阶段发布的方式进行升级?采用分阶段发布,可以先向?定比例的用户发布更新

38、的版本,然后再逐步提升用户比例,最终实现全网发布?通过小范围的版本更新,可以快速获取用户对新版本的反?意见,降低全网发布后版本出现问?的?险?2.?分?提供崩溃服务?性能管理及云服务监控,支?开发者精准定位问?,同时支持多维度分析,智能诊断问?并给出解决方案?表 3-5:运维分析能力介绍 能力名称 简介 崩溃服务 帮助开发者快速发现?定位?解决应用崩溃(又称闪退)问?无?开发任何代码,即可实时查看可视化数据报告并检测到应用在每个设备上的运行状态,及时快速发现或者定位?解决应用崩溃问?,从而确保应用稳定运行,避免崩溃给用户带来?糕体?性能管理 性能管理(APM,App Performance M

39、anagement)服务提供分钟级应用性能监控能力,检测应用在每个设备上的运行性能数据,帮助开发者快速发现?定位?解决应用性能问?云服务监控 云服务监控是?向云函数?云数据库等云服务的质量监控解 33 能力名称 简介 决方案,帮助开发者快速发现?定位?解决云服务的业务层性能问?OS 开放?力?OS 开放能力?通过 SDK 的形式对开发者呈现,提供应用开发所?的?系列系统开放能力,包括UI框架?Ability?分布式服务?安全?方舟编译器?HMS Core?基础软件服务?硬件服务等?1.ArkUI?基于 ArkTS 语言 UI 框架,有类 Web 开发和声明式两种开发范式?其中声明式开发范式采用

40、更接近自然语义的编程方式,开发者可以直观地描述 UI 界?,无?关心框架如何实现 UI 绘制和?染,实现极简?效开发?UI 框架从组件?动效和状态管理三个维度来提供 UI能力,同时还提供了系统能力接口,实现系统能力的极简调用?开箱即用的组件:提供丰富的系统?置组件,可以通过链式调用的方式设置组件的呈现效果?开发者可以组合?置组件为自定义组件,通过这种方式将?组件转化为?个个独立的 UI 单元,实现?不同单元的独立创建?开发和复用?丰富的动效接口:提供多种绘制图形能力,同时开放了丰富的动效接口,开发者可以通过封装的物理模型或者调用动画能力接口实现自定义动画?34?多维度状态与数据管理:状态与数据

41、管理作为声明式开发范式的特色,不同的装?器给开发者提供了清晰的?更新?染流程和管道?状态管理包括组件和应用状态管理,合理使用两种状态管理机制,可以在不同场景中仅通过改变数据,自动刷新UI?系统能力接口:封装了丰富的系统能力接口,开发者可以通过简单的接口调用,实现?效的业务开发?2.Ability 应用所具备能力的抽象,是应用程序的基本组成部分,主要包括组件生命周期回调?系统环境变化通知?应用跳转?卡片开发等能力?具备如下核心的技术特征:?基于MVVM(Model?View?ViewModel)模型:充分结合 ArkUI的声明式 UI特性,应用更易于实现界?与逻辑解?原生分布式:自带分布式接口,

42、支持跨端迁移和多端协同?支持多设备:Ability 实体与窗口实体解?,可扩展窗口形态,适应不同的设备形态?3.分布式?务 由于具体场景的差异,以及技术演进?生态构建等各种复杂因素的存在,多设备之间的通信方式各不相同(比如 Wi-Fi?蓝牙?ETH?PLC?NFC?USB?Zigbee?红外?超声波等),为了使开发者可以方便快捷地进行分布式开发,?蒙系统将跨设备交互涉及的关键能力统?封装并开放给开发者?根据不同的使用场景,分布式服务具体可分为:35?分布式软总线:支持多设备间协同实现异构组网,对开发者屏蔽不同通信介质和通信协议带来的差异?分布式软总线通过软硬件协同,提供?吞吐?低时延?可?安全

43、可信的通信通道,克服无线通信不可?不稳定的挑战,为开发者提供接近本地化访问效果的通信能力?分布式文件:基于分布式软总线,为应用跨设备文件相互访问提供完整解决方案?分布式文件系统是?个直接构建在内核态,无中心?性能的文件系统?提供了标准的 POSIX 操作能力,使开发者可以像使用本地文件?样访问分布式文件系统?分布式数据库:基于分布式软总线实现数据的分布式管理?用户数据不再与单?物理设备绑定,跨设备的数据处理如同本地数据处理?样方便快捷,对外呈现?份全局唯?的数据视图,让开发者能够轻松处理多设备下的数据存储?共享和访问?分布式硬件:打破单?设备的硬件边界,是软件定义各种新产品形态和体?的“新硬件

44、”所?的关键技术?分布式硬件能够将硬件设备化整为?,形成“超级终端”硬件资源池,供多个设备共享使用,真正达到软件定义硬件?设备间实现系统级?合并灵活按?适应不同场景的目的?合感知:构筑在传感器技术和多模感知技术上的系统开放能力,提供了对设备?环境?用户等的各类状态的感知能力,例如设备的摆放?态?操作行为?多设备间的空间拓扑关系?用户的移动状态?位置信息,甚至是用户的情绪等?合感知目前提供了六种不同的感知能力:36 表 3-6:?合感知能力 分类 描述 空间感知 多设备空间感知模块,基于综合传感处理平台的空间感知原子算法能力,提供多设备间的空间感知结果,包括设备间距离?角度?方位关系等?移动状态

45、感知 移动感知模块,通过加速度传感器?陀?仪?磁力计?气压计等传感器及 Modem 基站信息,判断用户所处移动状态:乘车?步行?乘坐直梯?自行车?走?跑?止?快步走?铁?步行?电梯?相对?止?手持步行?躺?智能?行?机?车载(不包含地铁?火车?铁等轨道交通和自行车之外的交通工具)?停留?地铁?设备状态感知 设备状态服务,通过加速度传感器?陀?仪?接近光等传感器及Modem 基站?WIFI 扫描信息,判断用户手机状态:?精度?止?中精度?止等?手势感知 能够感知操作手势,比如拿起?翻转?近耳?摇?摇?旋转?口袋模式?拿离耳?落腕?抬腕?招?招?地理围栏 地理围栏服务,负责围栏监控及围栏进出事件上

46、报?时间线 时间线服务,根据移动感知的信息,区分家和公司的场景,保存?天内用户停留和移动的行为,用于智?画像?4.安全?蒙系统提供严格的隐私保护和数据安全系统能力,保护消费者智能终端安全?具体的安全隐私能力包括:37?设备互信认证服务:为保证分布式系统的连接安全,实现用户数据在分布式场景下各个设备之间的安全流转,?要保证设备之间相互正确可信,即设备和设备之间建立信任关系,并能够在?证信任关系后搭建安全的连接通道,实现用户数据的安全传输?设备之间的信任关系包括同帐号设备之间的可信关系,以及点对点绑定的设备可信关系?用户身份认证:?蒙系统除提供数字密码?图形密码的传统身份认证方式,还提供指纹识别?

47、人脸识别等生物认证手段?根据不同认证方式的安全能力和特点,可应用于相应的身份认证场景,如设备解锁?应用锁,移动支付等?同时,针对分布式业务场景,为提升用户认证的便捷性,?蒙系统提供分布式协同认证能力,使用户可便捷地以近端设备为入口完成用户身份认证?应用程序?离和权限管理:权限访问控制是基于 Access Token 构建的应用权限管理能力,系统化地规范应用程序的行为准则与权限许可并强制执行?由于应用通过沙箱机制彼此?离,?认情况下,应用只能访问有限的系统资源?但应用为了扩展功能,?要访问沙箱外的系统或其它应用的数据或能力,系统或应用也?要具备共享数据或能力?为了保证这些数据或能力不被不当或恶意

48、使用,Access Token 权限管理机制提供了程序操作某种对象的许可,在应用层?,使用显式定义且经用户授权的权限控制机制?数据分级访问控制架构:为用户数据提供了全生命周期的安全防护措施,确保在每?个阶段,数据都能获得与其个人数据敏感程度?系统数据重要程度和应用程序数据资产价值匹配的保护措施?数据创建时即指定数据分级标签,基于标签关联全生命周期的访问控制权限和策略?在数据存储时,基于不同分级标签,采取不同的加 38 密措施?在数据传输时,?敏感等级的数据禁止向低安全能力的设备上传递,同时禁止低安全能力的设备发出指令控制?敏感等级的资源和外设?数据防泄?保护:数据生命周期范围内,数据的存储?访

49、问和传输过程中数据泄漏?险比较大?数据防泄漏保护服务保证数据跨设备传输到另?设备后,依然具有相应的访问管控能力?5.方?器(ArkCompiler)支持多种编程语言?多种芯片平台联合编译?运行而设计的统?编译运行时平台?支持包括动态类型和?态类型语言在内的多种编程语言,如 ArkTS?JS?TS?方舟编译器是?蒙系统作为手机?PC?平板?电视?车机和智能穿戴等多种设备统?操作系统的编译运行时底座?主要分成两个部分,编译工具链与运行时?编译工具链以ArkTS/TS/JS 源码作为输入,将其编译生成为 ABC(ArkCompiler Bytecode,即方舟字节码)文件?运行时直接运行字节码文件,

50、实现对应语言规范的语义逻辑?架构图如下图所示:图 3-6:方舟编译器 方舟编译器具备如下核心技术特点:?原生支持类型:目前业界引擎执行 TS 的方式是先把 TS 转化为 JS,再运行 JS 源码来完成对应的语义逻辑?方舟编译器的编译工具链编译 TS 源码时,会分析推导 TS的类型信息并将其传递给运行时?运行时直接使用类型信息在运行前?生成内联缓 39 存(Inline Cache)以加速字节码执行?另外,TSAOT(Ahead?of?Time)Compiler,可以利用字节码文件中的类型信息,直接编译生成优化机器码,使得应用可以直接运行优化机器码,获得?性能运行体?并发模型优化与并发 API:

展开阅读全文
相似文档                                   自信AI助手自信AI助手
猜你喜欢                                   自信AI导航自信AI导航
搜索标签

当前位置:首页 > 研究报告 > 其他

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        获赠5币

©2010-2024 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服