Module是利用/服务的基本功能单元,蕴含了源代码、资源文件、第三方库及利用/服务配置文件,每一个Module都能够独立进行编译和运行。一个HarmonyOS利用/服务通常会蕴含一个或多个Module,因而,能够在工程中创立多个Module,每个Module分为Ability和Library两种类型。

在工程中增加Module

创立新的Module

1.通过如下两种办法,在工程中增加新的Module。

  • 办法1:鼠标移到工程目录顶部,单击鼠标右键,抉择New > Module...,开始创立新的Module。
  • 办法2:选中工程目录中任意文件,而后在菜单栏抉择File > New > Module...,开始创立新的Module。

2.在New Project Module界面中,抉择须要创立的模板,单击Next


3.在Module配置页面,设置新增Module的根本信息,而后单击Next

  • Module name:新增模块的名称。
  • Module type:仅在Ability模板存在该字段,能够抉择Feature和Entry类型。如果同一类型的设施曾经存在Entry模块,增加新Module抉择Entry类型时,还须要配置distroFilter散发规定。
  • Enable Super Visual:是否应用低代码开发方式。
  • Language:抉择该Module的开发语言。
  • Device type:抉择模块的设施类型,如果新建模块的Module type为feature,则只能抉择该工程原有的设施类型;如果Module type为entry,能够抉择该Module反对的其余设施类型。
  • Enable native:仅Library模板存在,将创立一个能够调用C/C++的共享包。


4.若该Module的模板类型为Ability,还须要设置新增Ability的Ability nameExported参数,Exported参数示意该Ability是否能够被其它利用/服务所调用(FA模型下为Visible参数)。

  • 勾选(true):能够被其它利用/服务调用。
  • 不勾选(false):不能被其它利用/服务调用。

5.单击Finish,期待创立实现后,能够在工程目录中查看和编辑新增的Module。

导入Module

HarmonyOS工程反对从其它工程中导入HarmonyOS模块的性能,导入的模块只能是HarmonyOS工程中的模块。以后仅反对FA模型的模块导入到FA模型,Stage模型的模块导入到Stage模型,不反对FA模型的模块导入到Stage模型或Stage模型的模块导入到FA模型。

1.在菜单栏单击File > New >Import... >Import Module

2.抉择导入的模块时。其中SDK 4-7的工程既能够抉择模块也能够抉择工程,而SDK 8-9的工程只能够抉择模块。上面以SDK 8-9的工程为例介绍导入模块的具体操作。

在指定门路下,抉择导入的模块,单击OK。导入的模块能够为文件夹,也能够为zip格局。

配置distroFilter散发规定

同一类型的设施(Phone、Wearable、Lite Wearable等)可能在零碎API版本(apiVersion)、屏幕形态(screenShape)、分辨率(screenWindow)上存在差别。针对这些差别,开发者须要针对同一类型设施的不同型号进行适配开发,而后在利用市场实现精准的散发,以便不同设施的用户能取得更好的应用体验。为了实现利用市场的精准散发,须要在一个工程中,针对同一类型设施增加多个Entry模块来适配不同型号的设施,而后再配置不同的散发规定。具体规定如下:

  • 通过DeviceType与screenShape等属性的组合惟一确定一个Entry。
  • distroFilter中至多蕴含属性中的一个标签。
  • 如果一个Entry模块中配置了screenShape等任意一个或多个标签,则其余的Entry模块也必须蕴含雷同的标签。
  • 个别状况下,screenShape和screenWindow标签用于Lite Wearable设施中。
  • 不同属性标签的配置格局如下。其中,policy取值为include时,示意设施满足value取值时,利用市场向该设施进行散发;policy取值为exclude时,示意除了value的取值外,其它非法的取值,利用市场都会向设施进行散发。
阐明
screenWindow标签的policy取值只能为include。

Stage模型配置散发规定

1.在entry > src > main > resources > profile文件中新建一个.json文件,并依据开发理论须要,配置如下代码信息。Stage模型下散发规定请参见distroFilter标签。

{   "distroFilter": {      "apiVersion": {     //API 版本         "policy": "include",         "value": [4, 5]      },      "screenShape": {    //屏幕形态枚举         "policy": "include",         "value": ["circle", "rect"]      },      "screenWindow": {   //屏幕尺寸         "policy": "include",         "value": ["454*454", "466*466"]      },      "screenDensity": {  //屏幕的像素密度         "policy": "exclude",         "value": ["ldpi", "xldpi"]      },      "countryCode": {   //国家地区         "policy": "include",         "value": ["CN", "HK"]       }   }}

2.在module.json文件中指定散发文件。

{  "module": {    "name": "MyAbilityStage",    "metadata": [      {        "name": "ohos.module.distro",        "resource": "$profile:distro_filter_config"    //distro_filter_config为被指定的散发文件      }    ]  }}

FA模型下配置散发规定

在同一个工程中,如果同一个设施存在多个Entry模块,须要在每一个Entry模块的config.json文件中,配置distroFilter散发规定。FA模型distroFilter字段请参见distroFilter对象的内部结构。

"module": {  ...  "distroFilter": {    "标签名字": {      "policy": "include|exclude"      "value": [ a, b, c]     }  }}

删除Module

在工程目录中选中要删除的模块,单击鼠标右键,选中Delete,并在弹出的对话框中单击Delete

为了可能让大家跟上互联网时代的技术迭代,在这里跟大家分享一下我本人近期学习心得以及参考网上材料整顿出的一份最新版的鸿蒙学习晋升材料,有须要的小伙伴自行支付,限时开源,先到先得~~~~

支付以下高清学习路线原图请点击→《鸿蒙根底入门学习指南》纯血鸿蒙HarmonyOS根底技能学习路线图


支付以上残缺高清学习路线图,请点击→《鸿蒙 (Harmony OS)开发学习手册》小编本人整顿的局部学习材料(蕴含有高清视频、开发文档、电子书籍等)

以上分享的学习路线都适宜哪些人跟着学习?
-应届生/计算机专业通过学习鸿蒙新兴技术,入行互联网,将来高起点待业。
-0根底转行提前布局新方向,抓住风口,自我晋升,取得更多就业机会。
-技术晋升/进阶跳槽倒退瓶颈期,晋升职场竞争力,疾速把握鸿蒙技术,享受蓝海红利。

最初

鸿蒙开发学习是一个系统化的过程,从基础知识的学习到实战技能的锻炼,再到对前沿技术的摸索,每一环节都至关重要。心愿这份教程材料能帮忙您疾速入门并在鸿蒙开发之路上步步攀升,成就一番事业。让咱们一起乘风破浪,拥抱鸿蒙生态的广大将来!

如果你感觉这篇内容对你有帮忙,我想麻烦大家动动小手给我:点赞,转发,有你们的 『点赞和评论』,才是我发明的能源。

关注我,同时能够期待后续文章ing,不定期分享原创常识。

想要获取更多残缺鸿蒙最新VIP学习材料,请点击→《鸿蒙全套学习指南》