Как кодировать приложение, чтобы оно работало в будущих версиях IOS? проверка будущего! - PullRequest
3 голосов
/ 23 января 2011

Привет Интересно, если приложение, которое я написал прямо сейчас, прекрасно работает с IOS 3.1 до 4.2, но как я могу убедиться, что оно будет работать в будущих версиях, таких как IOS 4.3 и т. Д.? Моя конфигурация говорит, что базовый SDK 3.1; Означает ли это, что он будет работать на любом IOS выше 3.1?

Спасибо

Veeru

Ответы [ 3 ]

3 голосов
/ 23 января 2011

Длинное и короткое, вы не можете полностью. Что вы можете сделать, так это продолжать использовать API, которые доступны в версии 3.1 в течение длительного периода времени. Однако, если 4.3 устарел каким-либо методом, который устарел в 4.4, и вы игнорируете предупреждение об устаревании, у вас будут проблемы.

Лучший способ реагировать в этих случаях, если у вас есть метод, который доступен только до 4.2, например, вам придется обработать этот случай. Обычно это делается с проверкой стиля respondsToSelector: и слабым связыванием со структурой, которая обеспечивает это. Это, однако, не решит ситуацию, когда указанный метод может быть недоступен в 4.3, но Apple обычно довольно хорошо предоставляет новый API, если он не поддерживает другой, поэтому вы можете просто проверить это, если он существует, использовать его, в противном случае вызовите старый метод.

Такие мелочи помогут вам защитить ваше приложение в будущем, но они не на 100%. Хорошая вещь, как правило, они дают вам много времени, чтобы ответить (серьезная версия прошивки iOS, прежде чем они станут проблемой для вас).

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

Большинство приложений продолжают работать на более высоких версиях iOS.У меня есть несколько приложений, которые не обновлялись 2 года назад и до сих пор работают на новых устройствах iOS 4.2.

Улучшение шансов при проверке на будущее: много и много испытаний.Убедитесь, что приложение не слишком близко подходит к пределам памяти или производительности и имеет огромный запас (например, некоторые вещи стали намного медленнее на iOS 4.x на 3G).Держитесь подальше от устаревшего, недокументированного или не рекомендуемого использования всех API.

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

Если вы установили базовый SDK на 3.1 и не использовали какие-либо классы / методы не 3.1, тогда ваше приложение должно работать на iOS 3.1 и выше до ( возможно в какой-то момент в будущее) класс / метод / тип, который вы использовали , может в конечном итоге быть удален из последовательной версии API после многих, многих лет устаревания.

По крайней мере, это теория.

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