XCode 由于信息 plist 中的版本无效而无法验证

XCode fails to validate due to invalid version in info plist

这让我发疯。我已经完成了应用商店中应用程序的新版本。当前出售的版本是 1.68。我希望我的新版本是 1.8。我在我的应用程序的所有正确位置都有新版本(我已经检查了数十次)。但是在我创建存档后,它无法验证,因为我的 info.plist CFBundleShortVersionString [1.8] 中的版本不高于先前批准的版本 [1.68]。我不是数学专业的,所以如果我错了请纠正我,但我很确定 1.8 实际上大于 1.68。我已经在 iTunes Connect 上为新的 1.8 版本创建了一条记录,它就在那里等我上传应用程序。我已经尝试了很多其他版本和内部版本号组合,具有讽刺意味的是,如果我将它设置为 1.69,它就可以正常验证。我还尝试过清理、删除派生数据、完全重新启动所有内容等。这不是我第一次更新此应用程序。我以前在制作新版本时从未遇到过任何问题。有什么想法吗?

查看 CFBundleShortVersionString 上的文档:

The release version number is a string composed of three period-separated integers. The first integer represents major revision to the app, such as a revision that implements new features or major changes. The second integer denotes a revision that implements less prominent features. The third integer represents a maintenance release revision.

为了确定哪个版本更高,现在将每个整数槽与其对应的进行比较。在您的情况下,第一个整数是相等的(“1”和“1”),对于您的第二个整数,“68”被(正确地)识别为大于“8”。

由于 Apple 忽略了前导零,我认为在保持“1.8”感觉的同时最接近的是一直到“1.80”。

你不应该使用这样的版本代码 对于次要构建,它应该像 1.6.8 &对于主要版本,它应该像 1.8.0 &如果您要上传可用于试飞的版本,请说 1.8.0 & 它可能有问题,你想再次上传 1.8.0 版本,那么你应该更新版本号