HarmonyOS 鸿蒙Next 打包出来的APP文件名怎么带版本号
目前通过修改hvigorfile.ts,修改了打包出来的hap名称,可以带版本号,打包出来的app怎么带版本号?
import { hapTasks, OhosHapContext, OhosPluginId } from '@ohos/hvigor-ohos-plugin';
import { getNode } from '@ohos/hvigor'
import { hvigor } from '@ohos/hvigor'
const entryNode = getNode(__filename)
const appContext = hvigor.getRootNode().getContext(OhosPluginId.OHOS_APP_PLUGIN) as OhosAppContext
const appJsonOpt = appContext.getAppJsonOpt()
const versionName = appJsonOpt['app']['versionName']
entryNode.afterNodeEvaluate(node => {
const hapContext = node.getContext(OhosPluginId.OHOS_HAP_PLUGIN) as OhosHapContext
if (hapContext && hapContext.getBuildProfileOpt) {
const buildProfile = hapContext.getBuildProfileOpt()
const product = buildProfile.targets[0]
product['output'] = {
"artifactName": "****" + versionName,
}
hapContext.setBuildProfileOpt(buildProfile)
}
})
export default {
system: hapTasks, /* Built-in plugin of Hvigor. It cannot be modified. */
plugins:[] /* Custom plugin to extend the functionality of Hvigor. */
}
更多关于HarmonyOS 鸿蒙Next 打包出来的APP文件名怎么带版本号的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html
在工程级的hvigorfile文件里修改一下
import { appTasks , OhosPluginId} from '@ohos/hvigor-ohos-plugin';
import { hvigor } from '@ohos/hvigor'
hvigor.afterNodeEvaluate((hvigorNode)=>{
const context = hvigorNode.getContext(OhosPluginId.OHOS_APP_PLUGIN)
if (context && context.getBuildProfileOpt) {
const buildProfile = context.getBuildProfileOpt();
const products = buildProfile.app.products;
for (const product of products) {
if (product.name === context.getCurrentProduct().productBuildOpt.name) {
product['output']={
"artifactName": "app-v1.0.3"
}
}
}
context.setBuildProfileOpt(buildProfile);
}
})
export default {
system: appTasks, /* Built-in plugin of Hvigor. It cannot be modified. */
plugins:[] /* Custom plugin to extend the functionality of Hvigor. */
}
更多关于HarmonyOS 鸿蒙Next 打包出来的APP文件名怎么带版本号的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html
在HarmonyOS鸿蒙Next系统中,打包出来的APP文件名默认是不包含版本号的。如果你希望在文件名中包含版本号,通常需要在打包过程中手动设置或者通过构建脚本实现。
HarmonyOS应用打包工具(如hbuild或DevEco Studio)在生成APK或HAP文件时,会按照指定的输出格式生成文件名,通常仅包含应用包名和基础文件名,而不包含版本号。版本号信息会嵌入到APK或HAP文件内部的manifest文件中。
要在文件名中包含版本号,你可以采取以下步骤:
-
修改构建脚本:在构建脚本(如build.gradle或pom.xml等,具体取决于你使用的构建工具)中,添加自定义任务来修改生成的APK或HAP文件名,使其包含版本号。这通常涉及到获取项目的版本号信息,并将其格式化为文件名的一部分。
-
使用命令行工具:在构建过程结束后,使用命令行工具(如shell脚本或批处理脚本)来重命名生成的APK或HAP文件,将版本号添加到文件名中。
请注意,以上操作可能会影响应用的签名和验证过程,因为修改文件名会改变文件的哈希值。确保在修改文件名后重新进行签名和验证。
如果问题依旧没法解决请联系官网客服,官网地址是:https://www.itying.com/category-93-b0.html