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 name和Exported参数,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 NEXT)学习路径和一些资料的整理供小同伴学习
点击领取→纯血鸿蒙Next全套最新学习资料希望这一份鸿蒙学习资料能够给各人带来资助,有需要的小同伴自行领取~~
一、鸿蒙(HarmonyOS NEXT)最新学习路线
有了路线图,怎么能没有学习资料呢,小编也准备了一份联合鸿蒙官方发布条记整理收纳的一套系统性的鸿蒙(OpenHarmony )学习手册(共计1236页)与鸿蒙(OpenHarmony )开辟入门教学视频,内容包罗:(ArkTS、ArkUI开辟组件、Stage模子、多端摆设、分布式应用开辟、音频、视频、WebGL、OpenHarmony多媒体技术、Napi组件、OpenHarmony内核、Harmony南向开辟、鸿蒙项目实战等等)鸿蒙(HarmonyOS NEXT)…等技术知识点。
获取以上完整版高清,请点击→纯血版全套鸿蒙HarmonyOS学习资料
二、HarmonyOS Next 最新全套视频教程
三、《鸿蒙 (OpenHarmony)开辟基础到实战手册》
OpenHarmony北向、南向开辟情况搭建
四、大厂面试必问面试题
五、鸿蒙南向开辟技术
六、鸿蒙APP开辟必备
完整鸿蒙HarmonyOS学习资料,请点击→纯血版全套鸿蒙HarmonyOS学习资料
总结
总的来说,对于各人来说ye是一个挑战,也是一个机会。只有积极应对变化,不停学习和提升本身,他们才气在这个变革的时代中立于不败之地。
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。 |