HarmonyOS(鸿蒙)——全面入门,始于而不止于HelloWorld

官网地址:

https://developer.harmonyos.com/cn/docs/documentation/doc-guides/atomic-service-definition-0000001090840664

原子化服务由HAP包组成,HAP是Ability的部署包,HarmonyOS应用代码围绕Ability组件展开。一个HAP是由代码、资源、第三方库及应用配置文件组成的模块包,可分为entry和feature两种模块类型。

详细内容可以查看官网:

https://developer.harmonyos.com/cn/docs/documentation/doc-guides/basic-fundamentals-0000000000041611

一个原子化服务可以有一个或者多个HAP组成,而一个HAP对应1个FA或者1个PA,每个FA或PA均可独立运行,完成1个特定功能;1个或多个功能(对应FA或PA)完成1个特定的便捷服务。

所以HarmonyOS的App安装包的结构示意图如下:

原子化服务中的组成关系.png

3.3.2 可分可合思想

根据3.1中HarmonyOS的App安装包的结构可知,一个HarmonyOS安装包可以由任意需要的一个或者多个HAP组成,这里的组成是可以选择的,可以根据用户需求和硬件设备做合理的选择进行应用组合。

打个比方使用搭载HarmonyOS系统的电视和手机分别可以具有如下的一些功能:

HarmonyOS电视机:

HarmonyOS视频—电视机.png

HarmonyOS手机:

HarmonyOS视频—手机.png

电视机没有短信和通话的功能,但是它拥有控制频道切换的功能,因此可以安装控制频道.HAP;而手机拥有短信和通话的功能,因此可以安装短信.HAP和通过.HAP。两者都拥有游戏的功能,因此均可以安装游戏.HAP。因此HarmonyOS的HAP安装包,可以根据用户的实际需求或者硬件设施进行合理的安装,实现安装包的可分可合思想。

针对不同的功能,建议统一写入同一个HAP中,比如短信.HAP,这样可以减少用户使用某一个特定功能的时候,系统下载安装包的复杂度或者用户字段安装的复杂度。

3.3.3 HAP中的Ability

针对上面的游戏.HAP,比如说是男人就下一百层,我们会开发一个Ability,它会存在很多子功能,比如登录、注册、游戏、装备、聊天、等等。这些不同的功能都可以整合到不同的AbilitySlice中,一个AbilitySlice对应一个页面。

游戏.HAP的Ability与其AbilitySlice关系图如下:

游戏.HAP.png

登录、注册、游戏、装备、聊天、等等AbilitySlice统一加入一个Ability中,不同的AbilitySlice之间可以实现跳转,最终打包成一个可以运行的游戏.HAP

四、配置文件Config.json了解

===================

4.1、简介


4.1.1 结构

应用的每个HAP的根目录下都存在一个“config.json”配置文件。文件内容主要涵盖以下三个方面:

config.json.png

如下是一个简单的HarmonyOS应用程序创建后所看到的应用代码结构,entry -> src -> main -> config.json文件。其中三个模块分别为app、deviceConfig、module(我这里展示的三块是缩放后的内容。)

image.png

4.1.2 编辑视图

config.json文件采用JSON文件格式,其每一项都包含都由一个属性和值组成。其中属性值不分先后顺序,但是不能重复出现,必须唯一。值为JSON的基本数据类型。HarmonyOS的DevEco Studio支持两种编辑config.json的方式,分别是代码编辑视图和可视化编辑视图。

代码编辑视图:

image.png

可视化编辑视图:

  • 7
    点赞
  • 24
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值