HarmonyOS 总结
HarmonyOS 总结
1. HarmonyOS初认识
1.1 什么是 HarmonyOS
HarmonyOS 是一款面向万物互联时代的、全新的分布式操作系统。
鸿蒙操作系统在传统的单设备系统能力的基础上,提出了基于同一套系统能力、适配多种终端形态的分布式理念,能够支持多种终端设备。使得用户在使用时可以在多个终端硬件之间进行很好的切换
HarmonyOS的目标是覆盖“1+8+N”全场景终端设备,这里“1”代表的是手机,“8”代表PC、平板、手表、智慧屏、AI音响、耳机、AR/VR眼镜、车机,“N”代表其它物联网(Internet of Things,IoT)生态产品。
对应用开发者而言,HarmonyOS采用了多种分布式技术,使得应用程序的开发实现与不同终端设备的形态差异无关。这能够让开发者聚焦上层业务逻辑,更加便捷、高效地开发应用。
对设备开发者而言,HarmonyOS采用了组件化的设计方案,可以根据设备的资源能力和业务特征进行灵活裁剪,满足不同形态的终端设备对于操作系统的要求。
1.2 HarmonyOs 的特性
HarmonyOs 的三个显著特性:
硬件互助,资源共享
一次开发,多端部署
统一OS,弹性部署
其中分布式软总线是多种终端设备的统一基座,为设备之间的互联互通提供了统一的分布式通信能力,能够快速发现并连接设备,高效地分发任务和传输数据
分布式设备虚拟化平台可以实现不同设备的资源融合、设备管理、数据处理,多种设备共同形成一个超级虚拟终端
分布式数据管理基于分布式软总线的能力,实现应用程序数据和用户数据的分布式管理。
分布式任务调度构建统一的分布式服务管理(发现、同步、注册、调用)机制,支持对跨设备的应用进行远程启动、远程调用、远程连接以及迁移等操作。
HarmonyOS提供了用户程序框架、Ability框架以及UI框架,支持应用开发过程中多终端的业务逻辑和界面逻辑进行复用,能够实现应用的一次开发、多端部署,提升了跨设备应用的开发效率。一次开发。
好处:
HarmonyOS通过组件化和小型化等设计方法,支持多种终端设备按需弹性部署。
支持各组件的选择(组件可有可无)
支持组件内功能集的配置(组件可大可小)
支持组件间依赖的关联(平台可大可小)
1.3 HarmonyOS体系架构
HarmonyOS系统整体上采用的的是分层的体系架构。
从下向上依次为:内核层、系统服务层、框架层和应用层。
1.4 支持的开发语言
可以进行 HarmonyOS 相关的开发可以选择的语言很多
如:C/C++、Java、XML、JS(JavaScript)、TS(TypeScript)、ArkTS、CSS和HML(HarmonyOS Markup Language)等等。
在应用开发层面,目前主要支持的是两大语言:
一个是JavaScript,简称JS;
一个是改进的TypeScript,也称eTS或ArkTS。
当然也可进行基于C/C++、Java、Python等语言的开发.
搭建开发环境
2.1 DevEco Studio 介绍
DevEco Studio集成开发环境是基于IntelliJ IDEA Community开源版本开发的,面向全场景多设备,提供一站式的分布式应用开发平台。
开发者可以通过该IDE进行项目创建、开发、编译、调试、发布等。DevEco Studio使得开发者可以方便地开发各种HarmonyOS应用,提升开发效率。
除了具有基本的代码开发、编译构建及调测等功能外,还具有以下特点,
1)多设备统一开发环境
2)高效智能代码编辑
3)多端双向实时预览
4)多端设备模拟仿真
5)低代码可视化开发
2.2 开发运行第一个鸿蒙应用
开发并上架一个HarmonyOS应用到华为应用市场的4个步骤:
1)开发准备:开发准备包括注册和认证华为开发者账号,下载和安装DevEco Studio,下载HarmonyOS SDK。具体操作可以参考配置开发环境。
2)开发应用:DevEco Studio集成了Phone、Tablet、Wearable等多种设备的应用模板,可以通过向导创建工程,并实现自己的应用。开发过程中可以通过预览器等进行预览等工作,DevEco Studio提供了丰富的编码开发支持。
3)运行、调试和测试应用:应用开发过程中或完成后,可以使用真机进行调试或模拟器进行调试,DevEco Studio支持单步调试、跨设备调试、跨语言调试、变量可视化等调试手段,使得应用/服务调试更加高效。
4)签名发布应用:HarmonyOS应用开发完成后,如果需要分发,需要将应用发布至华为应用市场。发布到华为应用市场的应用,必须使用发布证书进行签名。
第1、4步骤需要做的工作的比较固定,基本都是一次性工作,第2、3步骤的工作往往是大量的,一个应用从开始开发到最终上线中间一般需要进行大量的分析、设计、编码、测试等工作,有的还会进行反复迭代。
项目启动过程
基于Stage模型的HarmonyOS应用项目中,每一个应用都有一个module.json5配置文件
首先会解析配置文件,获得配置文件中的module配置信息,找到要启动的应用对象。
根据配置文件中模块(module)配置的能力(abilities)信息获得配置的能力(ability),找到主能力。
能力的skills属性actions值设置为action.system.home的称为主能力,首先启动的能力。
接下来,系统会进入到主能力的生命周期过程。加载页面(page)
2.3 应用项目结构
APP Pack = Application Package,简称APP Pack,鸿蒙应用发布应用包
APP由一个或多个HAP(HarmonyOS Ability Package)以及描述APP属性的pack.info文件组成
一个HAP在工程目录中对应一个模块(Module),模块又由代码、资源、第三方库及应用清单文件等组成。
一个模块下面可以包含多个能力(Ability),其中有一个能力为主能力,也称为入口能力或Ability。主能力是应用启动首先加载的能力。
原文地址:https://blog.csdn.net/performer02/article/details/143489094
免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!