乐趣区

关于harmonyos:HarmonyOS添加删除Module

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 学习材料,请点击→《鸿蒙全套学习指南》

退出移动版