Ответ 1
Чтобы ваше приложение успешно запускалось на устройстве iOS 3.x, выполните следующие действия (Xcode 4.2):
-
Нажмите на название своего проекта, выберите свою цель и в разделе "Настройки сборки"
a) Задайте "цель развития iOS" (в разделе "Развертывание" ) до версии 3.0
б). Добавьте "armv6" в список "Архитектуры" (в разделе "Архитектуры" ).
c) Установите "Другие флаги компоновщика" (в разделе "Связывание" ) с "-weak-lSystem".
-
В вашем файле Info.plist удалите значение "armv7" из "Обязательные возможности устройства" (UIRequiredDeviceCapabilities).
-
В вашем коде:
а). Не используйте
userInterfaceIdiom
. Если вам нужно знать, какое устройство оно (iPhone или iPad), см. Как получить UI_USER_INTERFACE_IDIOM() для работы с iPhone OS SDK < 3.2.b) Не используйте window.rootViewController. Вместо этого используйте
[window addSubview: self.mainViewController.view];
, чтобы добавить вид вашего основного контроллера в окно. -
Нажмите на название своего проекта, выберите свою цель и в разделе "Сборка фаз" / "Связывание двоичных файлов с библиотеками" установите "UIKit.framework" в "Необязательный". Кроме того, устанавливается дополнительная опция, которая недоступна в iOS 3. Например, если вы используете рамки iAd или Twitter, они должны быть установлены как необязательные. Перед использованием убедитесь в наличии дополнительных фреймворков.
-
При запуске на реальном устройстве компилируйте приложение против последней версии SDK. Для этого выберите второй элемент из раскрывающегося списка "Схема" (в противном случае вы получите ошибку компиляции, связанную с вашими дополнительными SDK):