HarmonyOS鸿蒙Next中通过引用的方式配置app版本号

HarmonyOS鸿蒙Next中通过引用的方式配置app版本号 【问题描述】:我希望打出的安装包名称里,包含打包时 app配置的版本号,是通过直接引用的方式。因为每次发版,都需要在app.json5文件中改版本号,然后打包输出的时候还需要在根目录中的build_profile.json5文件中修改对应的output中的artifactName,参考文档能力说明-配置多目标产物-配置构建流程-构建应用 - 华为HarmonyOS开发者

但在Android中,我可以在配置文件中定义一些参数,然后到其他地方引用,这样只需要改一个地方就等于在每个需要这个参数的地方都进行了修改。

【问题现象】:Android中实现该效果的截图:

cke_22759.png

cke_23205.png

cke_23868.png

【版本信息】:不涉及

【复现代码】:不涉及

【尝试解决方案】:无


更多关于HarmonyOS鸿蒙Next中通过引用的方式配置app版本号的实战教程也可以访问 https://www.itying.com/category-93-b0.html

3 回复

其实只需要优化一下默认打包后的文件名就行了,现在缺少版本号这个极其重要的信息。

以后就只需要修改app.json5里的版本就行了。

希望官方能够优化一下~~~

更多关于HarmonyOS鸿蒙Next中通过引用的方式配置app版本号的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


在HarmonyOS Next中,可通过app.json5文件中的versionNameversionCode字段配置应用版本号。使用$符号引用资源值,例如在resources/base/element/string.json中定义版本字符串,然后在app.json5中通过$string:app_version引用。这种方式实现版本号的集中管理,便于维护和更新。

在HarmonyOS Next中,可以通过在build-profile.json5中定义变量实现版本号统一管理。具体步骤如下:

  1. build-profile.json5buildOption字段中定义版本变量:
"buildOption": {
  "externalOptions": {
    "versionName": "1.0.0",
    "versionCode": 100
  }
}
  1. app.json5中引用这些变量:
"versionName": "${external.versionName}",
"versionCode": ${external.versionCode}
  1. artifactName中同样引用版本变量:
"artifactName": "MyApp-${external.versionName}.hap"

这样只需修改build-profile.json5中的versionNameversionCode值,即可同步更新应用版本号和输出文件名,实现一处修改全局生效的效果。

回到顶部