2011-01-20 3 views
3

Если приложение скомпилировано в Xcode с его целевым назначением iOS для развертывания, установленным в iOS 4.2, будет ли оно работать на устройствах, работающих с более ранними версиями iOS? Приложение не имеет эксклюзивных функций для iOS 4. Я сделал чистую установку Snow Leopard и XCode 3.2.5, а более ранние версии SDK не проверялись.Назначение развертывания iOS для iOS 4.2. Будет ли приложение работать на устройствах, работающих на ранних версиях iOS?

ответ

6

№ Назначение развертывания определяет минимальную требуемую версию iOS, которая должна выполняться устройством. Вы можете установить цель сборки, чтобы 3.1.3, например, поддерживать устройства с версиями iOS> = 3.1.3. Базовый параметр SDK определяет, какую версию SDK использует ваше приложение. Это будет 4.2. Пока вы не используете какие-либо функции iOS 4, вы можете безопасно установить цель развертывания в 3.1.3.

1

№ Приложение будет работать только на версии, установленной в целевом развертывании, и позже версий, не ранее.

Цель развертывания должна быть установлена ​​на самую низкую версию iOS, которую вы хотите поддержать, например. iOS 3.x.

Я знаю, что вы заявили, что не использует никаких специальных функций 4.x. но только для полноты:

Если вы настроили цель развертывания на версию, более старую, чем последнюю, вам необходимо использовать слабые ссылки для новых фреймворков и проверить наличие символов классов/констант перед их использованием и отказом, если они не существует.

0

№ Это не работает. iOS не может знать, будет ли ваше приложение использовать функции, недоступные до его запуска, поэтому вы должны установить это как требование.

Смежные вопросы