Как определить, какой xcode использовался для разработки кода

У меня есть исходный код приложения для iOS. Я хочу определить, какая версия xcode была использована для разработки проекта.

В project.pbxproj когда я /* Begin PBXProject section */ в раздел /* Begin PBXProject section */ it

compatibilityVersion = "Xcode 3.2";

поэтому я предполагаю, что он был разработан на некоторых версиях 4.x, а не на xcode 5. Пожалуйста, предложите.

Ответ 1

Если у вас есть файл.xcarchive или.ipa, связанный с проектом, вы можете определить версию Xcode, которая использовалась для его создания. Xcode добавляет, помимо прочего, ключ "DTXcode" в список info.plist при сборке.

Поэтому откройте файл.xcarchive с помощью Finder или переименуйте файл.ipa в.zip и откройте его с помощью Finder.
Перейдите, чтобы найти файл пакета приложения - тот, который имеет расширение.app. Щелкните правой кнопкой мыши и "Показать содержимое пакета". Найдите список info.plist и откройте его в текстовом редакторе.

Вы увидите что-то вроде:

<key>DTXcode</key>
<string>0611</string>

В этом случае 611 - это Xcode 6.1.1.

Кроме того, если у вас есть доступ к iTunesConnect, вы можете просмотреть сведения о загруженном двоичном файле. Найдите "Детали сборки" и найдите ключ "Build SDK". Это будет буквенно-цифровая строка, например, 12B411.

Поскольку Apple обычно связывает только одну версию SDK с Xcode, вы можете использовать этот сайт, чтобы найти версию Xcode, соответствующую SDK: https://en.wikipedia.org/wiki/Xcode

В случае 12B411, я вижу, что это была финальная версия iOS 8.1, которая была в комплекте с Xcode 6.1 build 6A1052d.

Ответ 2

Если вы откроете файл project.pbxproj и выполните поиск CreatedOnToolsVersion, похоже, что это даст вам то, что вы хотите здесь, по крайней мере, с более новыми версиями Xcode.

Я вижу, что он установлен в 7.3.1 в одном из моих проектов и 8.3.2 в другом, созданном с этой версией Xcode.