HarmonyOS鸿蒙Next中打包时如何设置DevEco Studio使编译生成的app包为指定名称,例如app_版本号_版本名称
HarmonyOS鸿蒙Next中打包时如何设置DevEco Studio使编译生成的app包为指定名称,例如app_版本号_版本名称 打包时如何设置studio使编译生成的app包为指定名称,例如app_版本号_版本名称
3 回复
请参考链接:
和如下Hvigor自定义插件:
interface OhPackage {
name: string;
version: number;
description: string;
author: string;
}
// 动态修改hap包名,模块级的hvigor-file.ts
import { hapTasks, OhosPluginId } from '@ohos/hvigor-ohos-plugin';
import { hvigor } from '@ohos/hvigor';
const name = 'name';
const version = '1.0.3'; // 都可以调用其他api动态获取对应信息
const artifactName = name + '-' + version;
hvigor.afterNodeEvaluate((hvigorNode) => {
const context = hvigorNode.getContext(OhosPluginId.OHOS_HAP_PLUGIN);
if (context && context.getBuildProfileOpt) {
const buildProfile = context.getBuildProfileOpt();
const targets = buildProfile.targets;
for (const target of targets) {
if (target.name === 'default') { // 这个'default'可以通过接口获取到当前target的名称,此处不写了
target["output"] = {
"artifactName": artifactName
}
}
}
context.setBuildProfileOpt(buildProfile);
}
});
export default {
system: hapTasks,
};
更多关于HarmonyOS鸿蒙Next中打包时如何设置DevEco Studio使编译生成的app包为指定名称,例如app_版本号_版本名称的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html
在HarmonyOS鸿蒙Next中,通过DevEco Studio打包时,可以通过修改build.gradle
文件来设置生成的app包名称为指定格式,如app_版本号_版本名称
。具体步骤如下:
- 打开项目中的
build.gradle
文件,通常位于app
模块下。 - 在
android
或ohos
块中,找到defaultConfig
部分。 - 在
defaultConfig
中,设置versionCode
和versionName
,分别表示版本号和版本名称。 - 通过
applicationVariants.all
方法,修改生成的APK或HAP文件名。示例如下:
android {
...
defaultConfig {
versionCode 1
versionName "1.0"
...
}
...
applicationVariants.all { variant ->
variant.outputs.all { output ->
def newName = "app_${variant.versionCode}_${variant.versionName}.hap"
output.outputFileName = newName
}
}
}
在以上代码中,versionCode
和versionName
分别定义了版本号和版本名称,applicationVariants.all
方法用于修改生成的HAP文件名格式为app_版本号_版本名称.hap
。编译后,生成的HAP文件将按照指定格式命名。
在HarmonyOS鸿蒙Next中使用DevEco Studio打包时,可以通过修改build.gradle
文件来设置生成的app包名为指定格式,如app_版本号_版本名称
。具体步骤如下:
- 打开项目中的
build.gradle
文件。 - 在
android
块中添加或修改applicationVariants
,如下所示:
android {
applicationVariants.all { variant ->
variant.outputs.all { output ->
def versionName = variant.versionName
def versionCode = variant.versionCode
output.outputFileName = "app_${versionCode}_${versionName}.hap"
}
}
}
- 保存文件并重新编译项目,生成的app包将按照指定格式命名。