Подтвердить что ты не робот

Старые SDK исчезли после установки новой версии Xcode

Почему старые SDK удаляются при установке новой версии xcode с новым Iphone SDK? Теперь у нас есть v4, какие настройки мне нужно сделать, чтобы приложения все еще работали с 3.x?

Спасибо

4b9b3361

Ответ 1

Установите базовый SDK на 4.0 и целевой уровень развертывания на 3.x. Или, в современных условиях, базовый SDK для последнего и развертывания. Задавайте все, что вам нужно.

Ответ 2

Хотя "Zoul" наиболее кратко ответил на этот вопрос, я попытаюсь рассказать о двух настройках и указать на некоторые полезные документы, которые помогут другим, кто не знаком с ситуацией.

  • Base SDK Version: указывает версию SDK, на основе которой была скомпилирована программа. Это можно установить из "Настройки сборки" для проекта или цели. Вы можете использовать код API от Apple в своем коде, представленном до этой версии, и компилятор будет знать все символы и компилировать без каких-либо проблем.

  • Цель развертывания: это объявление с вашей стороны о минимальной версии iOS, которая должна быть установлена ​​на пользовательском устройстве для запуска вашего кода. Этот параметр можно найти в разделе "Информация" для раздела "Проект" и "Сводка" для конкретной цели. Теперь важно понять, что ваш код не будет автоматически запускаться на устройствах со старыми версиями iOS, если вы используете API-код, введенный в более поздней версии Apple. Это могут быть новые классы/методы/рамки, представленные Apple в более поздней версии. Вы должны обеспечить, написав необходимый условный код и предоставить альтернативный путь кода для грамотного деградации для более старой версии iOS, у которой нет нового API. Это зависит от вас, чтобы обрабатывать несовместимости версий.

Документацию Apple по этому вопросу можно найти в " Руководство по совместимости SDK".

Чтобы узнать об изменениях в разных версиях iOS, обратитесь к Что нового в iOS.

Этот раздел также обсуждается в разделе Руководство по разработке iOS "в разделе" Создание и запуск приложения ". См. Подраздел" Указание среды выполнения".

Ответ 3

Если у вас есть резервные копии вашей системы из-за чего-то вроде Time Machine (и вам лучше!), вы можете скопировать старые SDK из резервной копии, расположенной в /Developer/Platforms/iPhoneOS.platform/Developer/SDKs и/Developer/Platforms/iPhoneSimulator.platform/Developer/SDK - тогда просто перезапустите XCode, и вы готовы к работе.

Ответ 4

Если у вас все еще есть проблема после того, как вы установили цель развертывания как минимум так же низко, как ваш желаемый SDK, вам необходимо загрузить этот SDK. К счастью, Xcode также помогает нам:

  • Загляните в селектор симулятора в левом верхнем углу вашего Xcode и выберите More Simulators. Он откроет страницу, как показано ниже:

Download SDK view

  • просто выберите SDK, с которым вам нужно протестировать приложение.

Ответ 5

3.2.3 последняя бета-версия удалила все остальные SDK-причины, многие из которых пытались опубликовать приложения, разработанные с помощью бета-SDK, которые не будут приняты. Я думаю, что GM делает все тот же

Если вы хотите разработать для 4.0,3.2 и 3.0 (плюс 3.0.3.1,3.1.2,3.1.3) сделайте следующее

  • sudo/Developer/Library/uninstall-devtools -mode = all (Это приведет к удалению текущей установки XCode)
  • Затем установите первый старый XCode (3.2 final) в папку по умолчанию (/Developer)
  • Затем установите новый XCode (3.2.3 GM) в другую папку (/DeveloperBeta)
  • Таким образом у вас будут оба. И может запускать xcode из /Developer/Applications/Xcode.app или/DeveloperBeta/Applications/Xcode.app