更多内容请访问:鸿蒙科技社区https://harmonyos.51cto.com,与华为官方后台共同建立随着智能设备越来越多,应用开发在多设备场景下面临以下挑战:来自多台设备的形态差异(不同尺寸、分辨率的屏幕、设备能力的差异(内存从数百KB到GB级别的设备)。针对以上问题挑战,鸿蒙作为万物互联时代的全新分布式操作系统,将迎刃而解。每个设备,从而实现多设备协同和跨设备迁移,为万物互联奠定基础。鸿蒙分布式应用框架rs将深入解读。1、HarmonyOS用户程序在HarmonyOS系统上的应用分为:HarmonyOS应用和原子服务。鸿蒙应用与传统应用一样,需要在应用商店下载安装。原子服务有独立的运行入口,无需安装,实现特定的功能。比微信小程序更强大,加上HarmonyOS的跨设备、分布式能力和应用,两者能力无限。从开发者的角度,HarmonyOS上的基础组件分为3+1,其中3代表三种能力,分别是:PageAbility:负责用户界面的展示,DataAbility:负责数据管理,提供统一的数据访问对外抽象,ServiceAbility:负责后台运行的任务。1代表AbilityForm服务卡片,可以将重要信息或操作放在前面,实现直接服务,降低体验层次。3+1组件组合,在HarmonyOS上开发应用。打包格式为HAP(HarmonyOSAbilityPackage)。根据HAP是否有接口分为FA(FeatureAbility)和PA(ParticleAbility)两种。2.鸿蒙分布式应用框架总体架构。从应用框架的角度,系统分为5层,分别为:底层软件层包括内核、HAL、软总线。开发人员不会使用这一层。一般默默的为开发者和用户服务。基础服务层包括分布式调度管理、分布式数据管理、分布式硬件管理、分布式权限管理。核心服务层包括全局包管理、分布式运行管理、全局包管理:HarmonyOS上的应用不再局限于单个设备,包管理也包括跨虚拟终端的所有设备。分布式运行管理负责应用动态运行时管理,包括协同框架、迁移框架、服务卡框架。应用接口层是系统提供给开发者开发应用的接口层。无论系统的底层实现有多复杂,提供给开发者的接口都应该尽可能简单。这一层包括前面提到的基础组件,以及ACE(AbilityCross-platformEnvironment)框架。在多设备交互模型下,一致性非常重要。从UI的角度来看,UI框架如何适配大屏、小屏、长屏、方屏、横屏等,这种一致性很大程度上是ACE框架支持的。用户程序层是广大开发者开发出来供用户使用的应用程序。3.HarmonyOS分布式应用框架运行视图这是应用框架运行时的视图。每个应用在运行时都处于一个独立的沙箱中,相互隔离,互不影响,保证了系统的安全性。系统包括负责流程孵化的AppSpawn、负责流程管理的AppMS、负责包管理的BMS(BundleManagerService)、负责基础组件管理的AMS(AbilityManagerService)、负责分布式业务的DMS(DistributedManagerService),是专门的底层服务。我们上层的很多服务都有分布式服务,通过分布式服务来实现对接业务的规范化。其主要职责包括分布式任务管理、跨设备状态、数据同步等。4.HarmonyOS分布式运行:多端协同多端协同就是让我们的应用在多个终端上完成一个业务。此时,系统框架为应用提供了三种能力。第一个跨设备组件启动,有了这个能力,就可以完成一个并发了。二是通过连接通道实现跨设备数据传输和业务协同。第三个是分布式共享对象允许您自动同步两个设备或多个设备之间的状态。右上角的代码片段强调了一个连接。其实在系统层面提供连接看似理所当然,但背景极其复杂。HarmonyOS上的设备涵盖了从小型到中型到大型的各种类型的设备。它们的芯片类型不同,连接方式也不同。可能有WI-FI、蓝牙等,这种连接是无线的,经常会有干扰。这种连接也需要撼动底层网络。过滤掉。基于多终端协同框架,开发者可以跨多个设备开发应用。示例:你可以开发一个在pad上看视频的应用,这样就可以用手机对视频进行评论和回复,进行跨终端业务,这样就可以做到并发、协作、互补。5、HarmonyOS分布式运行:跨设备迁移HarmonyOS上的任务管理中心可以一端管理超级终端上的所有任务。借助这个任务管理中心,你可以轻松地将一个任务从手机端迁移到大屏。进程是开发人员和系统之间的连接。系统本身通过任务管理中心和应用程序获取一个状态,应用程序自己通过回调将状态传递给系统。状态在系统之间传递,开发者不需要关心。在迁移框架的帮助下,一个持续一致的Effect。6.HarmonyOS基本架构:分布式窗口管理无论是多设备协同还是跨设备迁移,当用户在任务中心拖动时,系统会将拖动的任务窗口拖到一个虚拟窗口进行渲染,并通过渲染将结果填充到目标代理窗口不仅传输视频流,还将用户交互事件发送回原始应用程序。系统有统一的多模交互模块,对应用来说实际上是不可见的。是的,不知道事件是来自本端还是另一端。7.HarmonyOS的基本架构:分布式硬件目前的设备包含了很多的硬件和外设,比如摄像头、麦克风,包括各种传感器,比如每天在手表里监测睡眠、每天走路等健康状态,如果这些设备是仅限于一台设备,这是一个巨大的限制。因此,在分布式环境下的编程中,系统从硬件的角度提供了两种能力。首先是全局虚拟化,将所有连接到超级终端的硬件外设池化到全局,可以提供给开发用户不需要建立连接,管理硬件使用权的交换,或者二次授权。这是因为硬件往往与隐私相关,而系统通过统一的全局虚拟化打通了这些底层能力。向上。然后第二个就是硬件的自动跟进。我们的软件不限于一台设备。它可以从一个设备迁移到另一个设备。比如这个时候播放声音,比如这个时候和别人视频聊天,这些硬件是自动迁移的,系统结合应用框架和底层分布式硬件来完成这样一个事情,减轻开发者的负担.更多信息请访问:Harmonyos.51cto.com,与华为官方合作打造的鸿蒙技术社区
