鸿蒙os 配置打包后的文件名称

为了方便区分和记录打包后的文件,一般将版本号,产品类型,渠道类型等添加到打包后的文件名称中,在鸿蒙os中,为了实现该功能,需要在项目的根目录下的 hvigorfile.ts 文件下添加如下代码:

typescript 复制代码
export default {
  system: appTasks,
  plugins: []
}

const node = getNode(__filename)
hvigor.nodesEvaluated(() => {
  const appContext = hvigor.getRootNode().getContext(OhosPluginId.OHOS_APP_PLUGIN) as OhosAppContext

  const appJsonOpt = appContext.getAppJsonOpt()
  const versionName = appJsonOpt.app.versionName
  const versionCode = appJsonOpt.app.versionCode

  const extParams = hvigor.getParameter().getExtParams()
  // 获取构建模式
  const buildMode = extParams['buildMode'] || 'debug'
  const buildProfileOpt = appContext.getBuildProfileOpt()
  const products = buildProfileOpt.app.products;

  products.forEach((product: any) => {
    product.output = product.output || {};
    product.output.artifactName = `APP_V${versionName}_${versionCode}_${buildMode}`
  })

  appContext.setBuildProfileOpt(buildProfileOpt)
})

如果还需要添加其他内容的话,可以自行研究添加

相关推荐
2501_920931705 小时前
React Native鸿蒙跨平台采用ScrollView的horizontal属性实现横向滚动实现特色游戏轮播和分类导航
javascript·react native·react.js·游戏·ecmascript·harmonyos
摘星编程7 小时前
React Native鸿蒙版:Drawer抽屉导航实现
react native·react.js·harmonyos
lbb 小魔仙8 小时前
【Harmonyos】开源鸿蒙跨平台训练营DAY9:获取分类数据并渲染
flutter·华为·harmonyos
mocoding8 小时前
Flutter 3D 翻转动画flip_card三方库在鸿蒙版天气预报卡片中的实战教程
flutter·3d·harmonyos
2501_920931709 小时前
React Native鸿蒙跨平台实现推箱子游戏,完成玩家移动与箱子推动,当所有箱子都被推到目标位置时,玩家获胜
javascript·react native·react.js·游戏·ecmascript·harmonyos
C雨后彩虹10 小时前
计算疫情扩散时间
java·数据结构·算法·华为·面试
24zhgjx-lxq10 小时前
华为ensp:MSTP
网络·安全·华为·hcip·ensp
qq_1777673711 小时前
React Native鸿蒙跨平台数据使用监控应用技术,通过setInterval每5秒更新一次数据使用情况和套餐使用情况,模拟了真实应用中的数据监控场景
开发语言·前端·javascript·react native·react.js·ecmascript·harmonyos
烬头882111 小时前
React Native鸿蒙跨平台应用实现了onCategoryPress等核心函数,用于处理用户交互和状态更新,通过计算已支出和剩余预算
前端·javascript·react native·react.js·ecmascript·交互·harmonyos
小雨青年12 小时前
鸿蒙 HarmonyOS 6 | 系统能力 (06) 构建现代化通知体系 从基础消息到实况
华为·harmonyos