HarmonyOS鸿蒙Next中编译构建时更改构建产物(App和hap)的文件名

HarmonyOS鸿蒙Next中编译构建时更改构建产物(App和hap)的文件名 有没有修改编译构建产物(App和hap)文件名(比如加入构建时间、构建分支)的插件,这个文档我看了,

https://developer.huawei.com/consumer/cn/doc/harmonyos-guides-V5/ide-hvigor-config-ohos-guide-V5

3 回复

没有现成实现插件,需要自己实现,通过hook以及插件上下文动态配置构建配置 参考地址:https://developer.huawei.com/consumer/cn/doc/harmonyos-guides-V5/ide-hvigor-config-ohos-sample-V5#section67131365449

如果想修改hap和App的构建名称

具体实现可参考文档:https://developer.huawei.com/consumer/cn/doc/harmonyos-guides-V5/ide-customized-multi-targets-and-products-sample-V5

更多关于HarmonyOS鸿蒙Next中编译构建时更改构建产物(App和hap)的文件名的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


在HarmonyOS鸿蒙Next中,编译构建时更改构建产物(App和hap)的文件名可以通过修改build-profile.json5文件来实现。在该文件中,你可以指定outputFileName字段来定义生成的App和hap文件的名称。例如:

{
  "app": {
    "outputFileName": "MyCustomAppName"
  },
  "modules": [
    {
      "name": "entry",
      "outputFileName": "MyCustomHapName"
    }
  ]
}

在上述示例中,MyCustomAppName将作为生成的App文件的名称,而MyCustomHapName将作为生成的hap文件的名称。请注意,outputFileName字段的值不应包含文件扩展名,系统会自动添加.app.hap后缀。

此外,如果你需要根据不同的构建环境(如开发、测试、生产)来动态生成文件名,可以在build-profile.json5中使用环境变量或条件语句来实现。例如:

{
  "app": {
    "outputFileName": "App_${env.BUILD_ENV}"
  },
  "modules": [
    {
      "name": "entry",
      "outputFileName": "Hap_${env.BUILD_ENV}"
    }
  ]
}

在这个例子中,BUILD_ENV是一个环境变量,你可以通过命令行或CI/CD工具设置不同的值(如devtestprod),从而生成不同的文件名。

通过这种方式,你可以在编译构建过程中灵活地控制生成的App和hap文件的名称。

在HarmonyOS鸿蒙Next中,可以通过修改build.gradle文件来更改构建产物(App和hap)的文件名。具体步骤如下:

  1. 打开项目中的build.gradle文件。

  2. androidohos块中,找到defaultConfigproductFlavors配置。

  3. 使用setProperty方法或直接赋值来修改outputFileNamearchiveBaseName属性,例如:

    android {
        defaultConfig {
            setProperty("archivesBaseName", "MyAppName")
        }
    }
    
  4. 保存文件并重新构建项目,生成的App或hap文件名将更改为指定的名称。

确保文件名符合命名规范,避免特殊字符和空格。

回到顶部