HarmonyOS鸿蒙Next中如何通过shell脚本修改app.json5的versionCode值

HarmonyOS鸿蒙Next中如何通过shell脚本修改app.json5的versionCode值

cke_137.png

有办法做到吗?或者有什么方法


更多关于HarmonyOS鸿蒙Next中如何通过shell脚本修改app.json5的versionCode值的实战教程也可以访问 https://www.itying.com/category-93-b0.html

3 回复

为什么要修改versionCode的值呢,如果是为了打包出的文件重命名可以调整打包脚本,如果要修改这个文件,那就写shell,读取文件,修改这里就可以了,比如转json然后改值,然后再转json字符串,最后写入文件即可

更多关于HarmonyOS鸿蒙Next中如何通过shell脚本修改app.json5的versionCode值的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


在HarmonyOS Next中,可以通过以下shell脚本修改app.json5的versionCode值:

#!/bin/bash
json_file="app.json5"
new_version=$1
sed -i "s/\"versionCode\"\s*:\s*[0-9]*/\"versionCode\": $new_version/" $json_file

使用方式:

  1. 将脚本保存为update_version.sh
  2. 执行:sh update_version.sh 新版本号
  3. 脚本会直接修改app.json5文件中versionCode的值

注意:该脚本需要运行在Linux/macOS环境,json文件需为标准格式。

在HarmonyOS Next中,可以通过shell脚本结合sed命令来修改app.json5中的versionCode值。以下是具体实现方法:

  1. 基本sed命令方案:
sed -i 's/"versionCode": [0-9]*/"versionCode": 新版本号/g' ./app.json5
  1. 更精确的版本号递增方案(推荐):
# 获取当前versionCode
current_code=$(grep -oP '"versionCode": \K[0-9]+' ./app.json5)

# 计算新版本号
new_code=$((current_code + 1))

# 更新文件
sed -i "s/\"versionCode\": $current_code/\"versionCode\": $new_code/" ./app.json5
  1. 带版本名同步修改的方案:
# 同时修改versionCode和versionName
sed -i -E 's/("versionCode": )[0-9]+/\1新版本号/; s/("versionName": ")[^"]+/\1新版本名/' ./app.json5

注意事项:

  • 确保脚本在项目根目录执行
  • 建议先备份app.json5文件
  • 脚本执行后需要重新编译应用

这种方法适用于自动化构建流程中的版本号自动递增场景。

回到顶部