我有iOS应用程序源代码,我想确定哪个版本的xcode被用来开发项目。在project.pbxproj中,当我转到/* Begin PBXProject section */部分时,它说
project.pbxproj
/* Begin PBXProject section */
compatibilityVersion = "Xcode 3.2";
所以我猜它是在一些4.x版本上开发的,而不是在xcode 5上。请建议一下。
gstyhher1#
如果你有.xcarchive或.ipa文件与项目相关联,那么你可以确定用于构建它的Xcode的版本。Xcode在构建时向info.plist添加了一个“DTXcode”键。因此,使用MySQL打开您的.xcarchive文件,或者将.ipa文件重命名为.zip并使用MySQL打开。导航以找到应用程序包文件-即扩展名为.app的文件。右键单击“显示包内容”。找到info.plist并用文本编辑器打开它。您将看到类似的内容:
<key>DTXcode</key> <string>0611</string>
611是Xcode 611。或者,如果您有权访问iTunes Connect,则可以查看已上载的二进制文件的详细信息。查找“Build Details”并找到一个名为“Build SDK”的键。它将是一个字母数字字符串,例如。12B411。由于Apple通常只将一个版本的SDK与Xcode捆绑在一起,因此您可以使用此网站查找与SDK对应的Xcode版本:https://en.wikipedia.org/wiki/Xcode在12 B411的情况下,我看到这是iOS 8.1 final,它与Xcode 6.1 build 6A 1052 d捆绑在一起。
3phpmpom2#
如果您打开项目.pbxproj文件并搜索CreatedOnToolsVersion,看起来会给予您想要的东西,至少在较新版本的Xcode中是这样。我看到它在我的一个项目中设置为7.3.1,在另一个项目中设置为8.3.2,使用该版本的Xcode创建。
CreatedOnToolsVersion
tktrz96b3#
在Xcode 11-12上,这对我来说很有效:在你的schema文件中,它提到了最后使用的Xcode版本。
YourProject.xcodeproj/xcshareddata/xcschemes/YourSchema.xcscheme
LastUpgradeVersion = "1160"表示Xcode 11.6当你点击Update to recommended settings警告时,Xcode会改变这个值!.即使您取消选中所有建议的设置并单击done,它仍然会更改号码。
LastUpgradeVersion = "1160"
Update to recommended settings
done
lpwwtiir4#
我发现这里提到LastUpgradeVersion的答案似乎不完全正确。也许对于仍然使用原始版本的项目来说,它工作得很好,但是在将我们的项目升级为使用Xcode 14.3 (10.3) 构建之后,*.xcscheme中的LastUpgradeVersion条目保持不变(“1030”)。
LastUpgradeVersion
*.xcscheme
然而,*/project.pbxproj中的LastUpgradeCheck条目相应更新。
*/project.pbxproj
LastUpgradeCheck
如果你得到了Git,那么
git grep -F LastUpgradeCheck -- '*/project.pbxproj'
4条答案
按热度按时间gstyhher1#
如果你有.xcarchive或.ipa文件与项目相关联,那么你可以确定用于构建它的Xcode的版本。Xcode在构建时向info.plist添加了一个“DTXcode”键。
因此,使用MySQL打开您的.xcarchive文件,或者将.ipa文件重命名为.zip并使用MySQL打开。
导航以找到应用程序包文件-即扩展名为.app的文件。右键单击“显示包内容”。找到info.plist并用文本编辑器打开它。
您将看到类似的内容:
611是Xcode 611。
或者,如果您有权访问iTunes Connect,则可以查看已上载的二进制文件的详细信息。查找“Build Details”并找到一个名为“Build SDK”的键。它将是一个字母数字字符串,例如。12B411。
由于Apple通常只将一个版本的SDK与Xcode捆绑在一起,因此您可以使用此网站查找与SDK对应的Xcode版本:https://en.wikipedia.org/wiki/Xcode
在12 B411的情况下,我看到这是iOS 8.1 final,它与Xcode 6.1 build 6A 1052 d捆绑在一起。
3phpmpom2#
如果您打开项目.pbxproj文件并搜索
CreatedOnToolsVersion
,看起来会给予您想要的东西,至少在较新版本的Xcode中是这样。我看到它在我的一个项目中设置为7.3.1,在另一个项目中设置为8.3.2,使用该版本的Xcode创建。
tktrz96b3#
在Xcode 11-12上,这对我来说很有效:
在你的schema文件中,它提到了最后使用的Xcode版本。
LastUpgradeVersion = "1160"
表示Xcode 11.6当你点击
Update to recommended settings
警告时,Xcode会改变这个值!.即使您取消选中所有建议的设置并单击
done
,它仍然会更改号码。lpwwtiir4#
我发现这里提到
LastUpgradeVersion
的答案似乎不完全正确。也许对于仍然使用原始版本的项目来说,它工作得很好,但是在将我们的项目升级为使用Xcode 14.3 (10.3) 构建之后,
*.xcscheme
中的LastUpgradeVersion
条目保持不变(“1030”)。然而,
*/project.pbxproj
中的LastUpgradeCheck
条目相应更新。如果你得到了Git,那么