鸿蒙三层架构,鸿蒙模块依赖、鸿蒙依赖模块,鸿蒙hap、鸿蒙hsp、鸿蒙har

一、产品定制层、基础特性层、公共能力层

1.1、产品定制层:product

应用的入口,

1.2、基础特性层:feature

业务:首页、我的

1.3、公共能力层:common

方法能力复用

一次开发,多段部署

3层架构的包,可以是har包,也可以是hsp包

har静态共享包

不支持依赖循环、A模块依赖B模块,B模块依赖A模块

不支持依赖传递,即:A模块依赖B模块,B模块依赖C模块

可以发三方库,

hsp动态共享包

多个hap/hsp共用的代码和资源放在一个HSP中,可以提高代码、资源的可重用性,只需要一份hsp包,减少了app的空间

不能发三方库

hsp拷贝一份,har会拷贝多份

二、项目中,使用三层架构步骤:

2.1、新建3个目录:product、features、common

2.2、分别在common中,新建1个模块,且选择hsp包,模块名可以命名为:basic

2.3、分别在features中,新建1个模块,且选择hsp包,模块名可以命名为:home、mine、login

2.4、product入口,汽车端,平板端,把默认的entry文件夹,移到该目录下,并重命名为:phone;

如果要在此目录新建平板端的项目,需要新建模块,并且选择hap包,因为只有hap才有页面

调出运行配置,将 deploy multi hap => deploy multi hap packages 勾上,并且下拉出来的选框,都勾上

三、模块之间依赖

在common中,想新建一个head的公共组件,phone模块想依赖这个组件,分2步

3.1、在common => index 文件中,先要导出head组件:

export *from './src/main/ets/components/Head'




注意:Head要有export关键字

3.2、在phone => oh-package.json5文件中,设置依赖:

依赖前:

{
  "name": "phone",
  "version": "1.0.0",
  "description": "Please describe the basic information.",
  "main": "Index.ets",
  "author": "",
  "license": "Apache-2.0",
  "packageType": "InterfaceHar",
  "dependencies": {
  }
}

依赖后:

{
  "license": "",
  "devDependencies": {},
  "author": "",
  "name": "phone",
  "description": "Please describe the basic information.",
  "main": "",
  "version": "1.0.0",
  "dependencies": {

    '@zjian/basic': 'file:../../common/basic'
    //格式:@zjian表示组织,basic表示业务名称
  }
}

完成

相关推荐
Andy醒8 小时前
HarmonyOS开发之使用Picker(从相册选择图片),并且通过Swiper组件实现图片预览
harmonyos·鸿蒙
张帅涛_66619 小时前
HarmonyOS开发之全局状态管理
华为·harmonyos
让开,我要吃人了19 小时前
HarmonyOS开发实战( Beta5.0)蓝牙实现服务端和客户端通讯详解
开发语言·前端·华为·移动开发·harmonyos·鸿蒙·鸿蒙系统
让开,我要吃人了19 小时前
HarmonyOS应用开发( Beta5.0)HOS-用户认证服务:面部识别
服务器·前端·华为·移动开发·嵌入式·harmonyos·鸿蒙
让开,我要吃人了1 天前
HarmonyOS开发实战( Beta5.0)橡皮擦案例实践详解
开发语言·前端·华为·移动开发·harmonyos·鸿蒙·鸿蒙系统
ImomoTo1 天前
HarmonyOS学习(十一)——安全管理
学习·安全·harmonyos·arkts·arkui
爱桥代码的程序媛1 天前
HarmonyOS开发5.0【应用程序包】
分布式·harmonyos·鸿蒙·鸿蒙系统·openharmony·鸿蒙开发·程序包
爱桥代码的程序媛1 天前
HarmonyOS开发5.0【rcp网络请求】
网络·移动开发·harmonyos·鸿蒙·鸿蒙系统·openharmony·rcp
让开,我要吃人了1 天前
HarmonyOS应用开发( Beta5.0)一杯冰美式的时间“拿捏Grid组件”
服务器·前端·华为·移动开发·harmonyos·鸿蒙·openharmony
Android技术栈1 天前
鸿蒙开发(API 12 Beta6版)【P2P模式】 网络WLAN服务开发
网络·harmonyos·鸿蒙·鸿蒙系统·p2p·openharmony·wlan