HarmonyOS 同一份代码,不同的环境(比如测试环境、uat环境、生产环境)有不同的参数、域名、bundleId(包名),需要如何配置打包才能实现?

HarmonyOS
6天前
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
FengTianYa

不同环境的环境变量,可以定义到工程级和模块级的自定义参数中,构建时生成BuildProfile.ets的utl类文件,代码中可直接引用。详见能力说明及实践说明:https://developer.huawei.com/consumer/cn/doc/harmonyos-guides-V5/ide-hvigor-get-build-profile-para-sample-0000001778834309-V5

在工程级下的build-profile.json5中的"signingConfigs"属性下配置这些签名文件路径,可配置多套签名配置,根据"name"属性在"products"中进行绑定。

文档地址:https://developer.huawei.com/consumer/cn/doc/harmonyos-guides-V5/ide-hvigor-configuration-0000001731595140-V5

"signingConfigs": [
{
  "name": "default",  //可自定义
"type": "HarmonyOS",
"material": {
  "certpath": "C:\\Users\\XXXX\\.ohos\\config\\default_TestRouter_BoEez92IUnEPih8ToYpBCSNzZDNnP9ZL-9b7atB5ilo=.cer",
  "storePassword": "0000001B2EAA1FA6B2777B1F2FFFBC354DD79FC73240CC7ABB98CB2322B3DEB5E8139C10E5EEA3764DE8F6",
  "keyAlias": "debugKey",
  "keyPassword": "0000001B203CF7C88745961881271B18ECCB6B85472BD818D91948F2120FFCD7E0473FD213EF3C5AB695D0",
  "profile": "C:\\Users\\XXXX\\.ohos\\config\\default_TestRouter_BoEez92IUnEPih8ToYpBCSNzZDNnP9ZL-9b7atB5ilo=.p7b",
  "signAlg": "SHA256withECDSA",
  "storeFile": "C:\\Users\\XXXX\\.ohos\\config\\default_TestRouter_BoEez92IUnEPih8ToYpBCSNzZDNnP9ZL-9b7atB5ilo=.p12"
}
},
{
  "name": "default1",
"type": "HarmonyOS",
"material": {
  "certpath": "C:\\Users\\XXXX\\.ohos\\config\\default_TestRouter_BoEez92IUnEPih8ToYpBCSNzZDNnP9ZL-9b7atB5ilo=.cer",
  "storePassword": "0000001B2EAA1FA6B2777B1F2FFFBC354DD79FC73240CC7ABB98CB2322B3DEB5E8139C10E5EEA3764DE8F6",
  "keyAlias": "debugKey",
  "keyPassword": "0000001B203CF7C88745961881271B18ECCB6B85472BD818D91948F2120FFCD7E0473FD213EF3C5AB695D0",
  "profile": "C:\\Users\\XXXX\\.ohos\\config\\default_TestRouter_BoEez92IUnEPih8ToYpBCSNzZDNnP9ZL-9b7atB5ilo=.p7b",
  "signAlg": "SHA256withECDSA",
  "storeFile": "C:\\Users\\XXXX\\.ohos\\config\\default_TestRouter_BoEez92IUnEPih8ToYpBCSNzZDNnP9ZL-9b7atB5ilo=.p12"
}
}
],

"products": [
{
  "name": "default",  //可自定义
"signingConfig": "default",
"compatibleSdkVersion": "XXX",
"runtimeOS": "HarmonyOS",
},
{
  "name": "default2",
"signingConfig": "default1",
"compatibleSdkVersion": "XXX",
"runtimeOS": "HarmonyOS",
}
],

配置完后单击右上角的product图标,指定需要打包的Product。

包名bundleName需要手动替换。

分享
微博
QQ
微信
回复
6天前
相关问题
生产环境如何获取appId
337浏览 • 1回复 待解决
HarmonyOS hdc 环境配置问题
125浏览 • 1回复 待解决
DevEco离线环境配置问题
100浏览 • 1回复 待解决
HarmonyOS app发布测试和灰度环境
1081浏览 • 1回复 待解决
交叉编译环境配置问题
246浏览 • 1回复 待解决
HarmonyOS EcoDev 如何配置debug/release环境
666浏览 • 1回复 待解决
HarmonyOS 环境设置
162浏览 • 1回复 待解决