首页 > 解决方案 > “设置:CFBundleVersion $buildNumber”未在 XCode 12 中设置递增的内部版本号

问题描述

我在构建阶段添加了以下脚本来增加我在 XCode 12 中的构建号

#!/bin/bash
buildNumber=$(/usr/libexec/PlistBuddy -c "Print CFBundleVersion" "${INFOPLIST_FILE}")
buildNumber=$(($buildNumber + 1))
/usr/libexec/PlistBuddy -c "Set :CFBundleVersion $buildNumber" "${INFOPLIST_FILE}"

但是内部版本号没有增加。当我使用替代脚本时,内部版本号不正确地递增,范围在 0000 到 0006 之间。我真的不想要前导零,但至少这个脚本正在改变构建,这就是我在这里列出它的原因。

#!/bin/bash
buildNumber=$(/usr/libexec/PlistBuddy -c "Print CFBundleVersion" "$INFOPLIST_FILE")
buildNumber=$(($buildNumber + 1))
buildNumber=$(printf "%04d" $buildNumber)
/usr/libexec/PlistBuddy -c "Set :CFBundleVersion $buildNumber" "$INFOPLIST_FILE"

有人可以告诉我第一个脚本有什么问题吗?过去它曾经工作过。而且我已经确保 xcode 指向正确的Info.plist文件。

标签: iosswiftxcodebuildxcode12

解决方案


尝试这个:

buildNumber=$(/usr/libexec/PlistBuddy -c "Print CFBundleVersion" 
"${PROJECT_DIR}/${INFOPLIST_FILE}")
buildNumber=$(($buildNumber + 1))
/usr/libexec/PlistBuddy -c "Set :CFBundleVersion $buildNumber" 
"${PROJECT_DIR}/${INFOPLIST_FILE}"

和!确保 (BundleVersion) 包含 NUMBER!

截图

之前运行此脚本:

/usr/libexec/PlistBuddy -c "Set :CFBundleVersion 1" "${PROJECT_DIR}/${INFOPLIST_FILE}"

推荐阅读