HarmonyOS 鸿蒙Next 同一份代码不同环境配置打包实现方法(如测试、UAT、生产环境参数、域名、bundleId配置)
HarmonyOS 鸿蒙Next 同一份代码不同环境配置打包实现方法(如测试、UAT、生产环境参数、域名、bundleId配置)
不同环境的环境变量,可以定义到工程级和模块级的自定义参数中,构建时生成BuildProfile.ets的utl类文件,代码中可直接引用。详见能力说明及实践说明:
在工程级下的build-profile.json5中的"signingConfigs"属性下配置这些签名文件路径,可配置多套签名配置,根据"name"属性在"products"中进行绑定
文档地址:
https://developer.huawei.com/consumer/cn/doc/harmonyos-guides-V13/ide-hvigor-multi-module-V13
"signingConfigs": [
{
“name”: “default”, //可自定义
“type”: “HarmonyOS”,
“material”: {
“certpath”: “xxx”,
“storePassword”: “xxx”,
“keyAlias”: “debugKey”,
“keyPassword”: “xxx”,
“profile”: “xxx”,
“signAlg”: “SHA256withECDSA”,
“storeFile”: “xxx”
}
},
{
“name”: “default1”,
“type”: “HarmonyOS”,
“material”: {
“certpath”: “xxx”,
“storePassword”: “xxx”,
“keyAlias”: “debugKey”,
“keyPassword”: “xxx”,
“profile”: “xxx”,
“signAlg”: “SHA256withECDSA”,
“storeFile”: “xxx”
}
}
],
“products”: [
{
“name”: “default”, //可自定义
“signingConfig”: “default”,
“compatibleSdkVersion”: “5.0.0(12)”,
“runtimeOS”: “HarmonyOS”,
},
{
“name”: “default2”,
“signingConfig”: “default1”,
“compatibleSdkVersion”: “5.0.0(12)”,
“runtimeOS”: “HarmonyOS”,
}
],
配置完后单击右上角的product图标,指定需要打包的Product
包名bundleName需要手动替换
更多关于HarmonyOS 鸿蒙Next 同一份代码不同环境配置打包实现方法(如测试、UAT、生产环境参数、域名、bundleId配置)的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html
在HarmonyOS鸿蒙Next系统中,同一份代码针对不同环境(如测试、UAT、生产环境)进行打包时,可以通过配置文件管理不同环境的参数。具体实现方法如下:
-
创建配置文件:在项目根目录下创建多个配置文件,例如
config_test.json
、config_uat.json
、config_prod.json
,分别存储测试、UAT、生产环境的参数(如域名、bundleId等)。 -
读取配置文件:在代码中编写一个配置管理器,根据当前编译环境(通过编译指令或环境变量确定)选择对应的配置文件进行读取。
-
编译指令区分环境:在项目的编译配置中,为不同环境设置不同的编译指令或环境变量。例如,使用宏定义区分环境:
#define ENV_TEST
、#define ENV_UAT
、#define ENV_PROD
。 -
打包脚本:编写打包脚本,根据传入的环境参数选择对应的编译指令和配置文件进行打包。
-
执行打包:在执行打包命令时,传入目标环境的参数,脚本会根据参数选择相应的配置和编译指令进行打包。
通过以上步骤,可以实现同一份代码在不同环境下的打包,且各环境配置相互独立。如果问题依旧没法解决请联系官网客服,官网地址是:https://www.itying.com/category-93-b0.html。