文山州住房和城乡建设局网站正规代运营公司排名
此文章内容兼容API12,使用harmony next应用开发
前置概念介绍
1,配置文件介绍:
- build-profile.json5:modules字段,用于记录工程下的模块信息,主要包含模块名称、模块的源码路径以及模块的 target 信息
- oh-package.json5:应用的三方包依赖配置文件
- local.properties: 应用本地环境配置文件
- obfuscation-rules.txt: 应用模块的混淆规则配置文件
- consumer-rules.txt: 库模块默认导出的混淆规则文件,会打包到HAR包中;仅支持HAR模块
2,target 和 product:
- Entry/Feature,构建产物是HAP。一个模块可以定义多个target,每个target对应一个定制的HAP,通过配置可以实现一个模块构建出不同的HAP
- 鸿蒙工程的构建产物是APP包。一个工程可以定义多个product,每个product对应一个定制化应用包,通过配置可以实现一个工程构建出多个不同的应用包。
工程级build-profile.json5
{"app": {//必须要有default ,否则编译时会出现错误。"products": [...{"name": "product_A","signingConfig": "default_test","compatibleSdkVersion": "5.0.1(13)","targetSdkVersion": "5.0.1(13)","runtimeOS": "HarmonyOS","buildOption": {},"output": {"artifactName" : 'AppName'},//"bundleName": "com.XXX.XXX",//标识应用的Bundle名称,用于标识应用的唯一性"vendor": "$string:app_vendor","versionCode": 100000,//标识应用的版本号"versionName": "1.0.0",//标识向用户展示的应用版本号。"icon": "$media:icon_0000",//图标"label": "$string:app_name_0000"//应用名称},...]}
...
"modules": [//--------------公共model————start------------------{"name": "support","srcPath": "./support","targets": [{"name": "default","applyToProducts": [ //将定义的target打包到哪一个product中"product_A", //将default target打包到product_A APP中 "product_B",]}]}]
}
构建目标产物
单击右上角的
图标,指定需要打包的Product及Target,然后单击Apply保存。例如选择"ProductA"中,entry模块对应的"free" Target。
- Product:选择需要构建的 APP 包。
- Build Mode:选择编译模式。
- Product Info:该APP包的BundleName和SigningConfig信息。
- Target Select:选择各个模块的Target,该Target需要包含在定义的Product中才能选择,如果未包含则显示"No Target to apply"