Как сделать приложение для iPhone совместимым с несколькими версиями SDK (прошивки) - PullRequest
60 голосов
/ 12 июня 2010

С выходом iOS4 я уже планировал включить iAd в будущие обновления моего приложения. Я предполагаю, что это сделает мое приложение непригодным для использования на прошивке ниже 4.0. Есть ли способ изменить эти переменные и файл .xib в зависимости от прошивки пользователя? Приветствия.

1 Ответ

71 голосов
/ 12 июня 2010

Да, вы можете собрать с последним SDK (то есть: 5.1) и по-прежнему работать на устройствах с более ранними версиями прошивки (SDK).

  • Установите для вашей цели развертывания самую раннюю версию, с которой вы хотите работать, т.е. 3.0.
  • Вы устанавливаете свой базовый SDK на последнюю версию, с которой вы компилируете, то есть: 5.0. Таким образом, вы можете ссылаться на новые определения и символы в вашем коде. В этой статье «SDK и цели развертывания» подробно рассматривается развертывание и базовый SDK.
  • Слабая ссылка на библиотеки / фреймворки с символами, которые доступны только в более новой iOS. Это значит, что ваше приложение будет работать на устройстве, на котором нет новых символов.
  • Вы должны проверить, что более новый метод доступен перед его вызовом. Вы должны убедиться, что не вызываете метод 5.0 или 4.X, только когда ваше приложение находится на устройстве <4.0. Конечно, вы должны изящно справляться с работой над более старыми версиями, используя либо более старые методы, либо не поддерживая определенные функции, которые требуют более новой поддержки SDK. </li>
  • NEW с XCode 4.2: Для поддержки старых устройств вам необходимо добавить armv6 к архитектурам сборки и удалить armv7 из список необходимых возможностей устройства.

См. Эти вопросы и ответы для более подробной информации:

...