更好的Xcode内部版本号
iOS和macOS应用程序具有版本号和内部版本号。 通常,您会在Xcode或iTunes Connect中看到这些代表以下内容:
1.0 (1)
这是版本号1.0
,内部版本号1
如您所知,内部版本号用于区分同一版本的不同内部版本,因此您可以上传内部版本1
,然后进行修改,然后上传内部版本2
我过去每次创建构建时都手动增加此构建号,但是该策略存在问题:
- iTunes Connect将拒绝与先前上传的版本具有相同版本号的版本。 因此,如果您忘记增加内部版本号,则会浪费时间。
- 有时我不记得是否要增加它,所以最终会做两次
- 内部版本号对这个特定内部版本没有任何帮助
最后一点是最重要的。 您怎么知道您的构建正确? 质量检查人员可能告诉您他们在版本8
上发现了问题…又是哪一个? 或者您要在iTunes Connect上提交您的应用程序,而构建版本为9
–是您刚刚创建的应用程序吗?
最近,我一直在使用时间戳(yyyyMM.dd.HHmm)
作为我的内部版本号,如下所示:
1.0 (201805.15.1407)
此版本创建于15/05 / 2018,14:07
请注意,内部版本号只能包含三个句号,这就是为什么我将年份和月份放在一起的原因
这有很多好处:
- 如果质量检查人员想要测试今天构建的更改,他们可以轻松地验证其版本的构建时间是否正确
- 较新的版本始终具有较高的版本号,并且它是自动化的,因此您不必担心开发人员会犯错误。
- 如果您将一个版本上载到iTunes Connect,然后第二天将另一个版本进行了一些更改,则很明显哪个是哪个!
使用Xcode的构建阶段中的“运行脚本阶段”和以下脚本,这很容易实现:
## Generate the build number using current date and time
buildNumber=$(date "+%Y%m.%d.%H%M")
## Set the build number in plist file
/usr/libexec/PlistBuddy -c "Set :CFBundleVersion $buildNumber" "${TARGET_BUILD_DIR}/${INFOPLIST_PATH}"
想法/评论/投诉/想聊天吗? 通知我。