鸿蒙Next打包hap时如何自定义文件名格式为"名字-版本号-当前时间"

在鸿蒙Next开发中,打包hap文件时默认生成的文件名格式不符合需求。请问如何自定义文件名格式为"名字-版本号-当前时间"?需要修改哪个配置文件或添加什么代码来实现?当前时间希望能精确到年月日时分,比如"202405201430"这样的格式。

2 回复

哈哈,这简单!在build-profile.json5里修改outputFilename就行:

"outputFilename": "名字-${versionName}-${currentTime}"

记得currentTime要自己定义个变量,比如用Date.now()。搞定!

更多关于鸿蒙Next打包hap时如何自定义文件名格式为"名字-版本号-当前时间"的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


在鸿蒙Next中,可以通过修改build-profile.json5文件来自定义HAP文件名格式。具体步骤如下:

  1. 打开项目根目录下的build-profile.json5文件
  2. buildOption中添加outputFilename配置

配置示例:

{
  "app": {
    "signingConfigs": [],
    "products": [
      {
        "name": "default",
        "signingConfig": "default"
      }
    ]
  },
  "modules": [
    {
      "name": "entry",
      "srcPath": "./entry",
      "buildOption": {
        "outputFilename": "myapp-${versionName}-${currentTime}"
      }
    }
  ]
}

关键说明:

  • ${versionName} 会自动替换为应用版本号
  • ${currentTime} 会自动替换为打包时的当前时间戳
  • 文件名支持的其他变量:${appName}, ${moduleName}, ${versionCode}
  • 时间格式默认为时间戳,如需特定格式需要自行处理

注意事项:

  • 确保版本号已在module.json5中正确定义
  • 打包时如果出现重名文件会被覆盖
  • 此配置针对单个模块,多模块需要分别配置

通过这种方式,打包生成的HAP文件名就会按照"名字-版本号-当前时间"的格式命名。

回到顶部