HarmonyOS 鸿蒙Next hvigorfile.ts 自定义任务如何修改AppScope 目录下app.json5 配置

HarmonyOS 鸿蒙Next hvigorfile.ts 自定义任务如何修改AppScope 目录下app.json5 配置

目前基于

hvigor.getRootNode().afterNodeEvaluate(rootNode => {});

实现定制化输出 app 名称

product.output.artifactName = `XX-${product.name}-${appContext.getBuildMode()}-v${appJson5.app.versionName}-${appJson5.app.versionCode}-${getCurrentDateTime()}`;

方法 appContext.setBuildProfileOpt(buildProfile) 只会修改当前构建的 app.json5 文件中内容的 obj 对象。如何直接修改 app.json5 文件,主要想让每次打包后的 versionCode 自增。


更多关于HarmonyOS 鸿蒙Next hvigorfile.ts 自定义任务如何修改AppScope 目录下app.json5 配置的实战教程也可以访问 https://www.itying.com/category-93-b0.html

1 回复

更多关于HarmonyOS 鸿蒙Next hvigorfile.ts 自定义任务如何修改AppScope 目录下app.json5 配置的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


在HarmonyOS Next中,hvigorfile.ts用于定义构建任务。要修改AppScope目录下的app.json5配置,可以通过以下步骤实现:

  1. 导入相关模块: 在hvigorfile.ts中导入fs模块,用于文件操作。

    import * as fs from 'fs';
    
  2. 定义自定义任务: 创建一个自定义任务,用于修改app.json5文件。

    task('modifyAppJson5', () => {
        const appJson5Path = 'AppScope/app.json5';
        const appJson5 = JSON.parse(fs.readFileSync(appJson5Path, 'utf8'));
    
        // 修改配置
        appJson5.config = {
            ...appJson5.config,
            // 添加或修改所需的配置项
            newConfigKey: 'newConfigValue'
        };
    
        // 写回文件
        fs.writeFileSync(appJson5Path, JSON.stringify(appJson5, null, 2));
    });
    
  3. 执行任务: 在构建流程中调用自定义任务。

    build({
        tasks: ['modifyAppJson5']
    });
    

通过以上步骤,可以在构建过程中自动修改AppScope目录下的app.json5配置。

回到顶部