鸿蒙Next开发中如何根据release模式动态命名.hap文件

在鸿蒙Next开发中,如何根据release模式动态命名.hap文件?目前打release包时希望自动在文件名中加入版本号或构建时间等标识,但不知道如何通过配置或脚本实现。求具体实现方案或示例代码。

2 回复

在鸿蒙Next里,动态命名.hap文件?简单!在build-profile.json5里,用"artifactName"配合"${options.ohosBundleType}-${options.ohosBuildMode}"变量,release模式自动加后缀。比如app-release.hap,搞定!代码优雅,打包不愁~

更多关于鸿蒙Next开发中如何根据release模式动态命名.hap文件的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


在鸿蒙Next开发中,可以通过配置build-profile.json5文件,结合环境变量或构建参数实现根据release模式动态命名.hap文件。

具体步骤如下:

  1. 修改build-profile.json5
{
  "app": {
    "signingConfigs": [],
    "products": [
      {
        "name": "default",
        "signingConfig": "default",
        "compileSdkVersion": 9,
        "compileSdkType": "harmonyOS",
        "outputs": [
          {
            "name": "default",
            "artifactType": "hap",
            "fileName": "${project.name}-${buildMode}-${versionName}.hap"  // 动态文件名
          }
        ]
      }
    ]
  }
}
  1. 关键变量说明

    • ${project.name}:项目名称
    • ${buildMode}:构建模式(debug/release)
    • ${versionName}:版本名称
  2. 验证配置: 执行构建命令时,系统会自动替换变量:

./gradlew assembleRelease

生成的.hap文件将自动命名为:项目名-release-版本号.hap

注意事项

  • 确保buildMode变量在构建时可用
  • 可在outputs中配置多个输出产物,分别设置不同文件名规则
  • 支持使用环境变量:${env.VARIABLE_NAME}

这种方式无需编写额外脚本,直接利用鸿蒙构建系统的变量替换功能即可实现动态命名。

回到顶部