Цель развертывания iOS установлена ​​на iOS 4.2. Будет ли приложение работать на устройствах с более ранними версиями iOS? - PullRequest
3 голосов
/ 20 января 2011

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

Ответы [ 3 ]

6 голосов
/ 20 января 2011

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

1 голос
/ 20 января 2011

Нет. Приложение будет работать только с версией, установленной в целевом объекте «Развертывание» и более поздними версиями, но не более ранними.

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

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

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

0 голосов
/ 20 января 2011

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...