Обратная совместимость с ios5 - PullRequest
0 голосов
/ 22 февраля 2012

Быстрое любопытство. Если я разрабатываю приложение с компонентами ios 5 (например, core audio kAudioUnitSubType_AudioFilePlayer) и устанавливаю цель развертывания ios 4, будут ли компоненты ios 5 работать на устройстве ios 4?

Ответы [ 3 ]

2 голосов
/ 22 февраля 2012

Поскольку никто не может путешествовать во времени, вы не можете использовать функции iOS 5 на iOS 4.

Однако вы можете написать приложение, которое отлично работает на iOS 4 и использует функции iOS 5, если они доступны. Например, вы можете спросить класс, реализует ли он метод, используя respondsToSelector:, и если это так, вы можете вызвать его.

С kAudioUnitSubType_AudioFilePlayer вы можете просто попытаться инициализировать аудиоустройство с помощью AUGraphNewNode, но в iOS 4 вы получите ошибку (но не вылет).

1 голос
/ 22 февраля 2012

Приложение, работающее на iOS 4.x, имеет доступ только к API, доступным в платформах 4.x.

0 голосов
/ 22 февраля 2012

Я бы порекомендовал для новых приложений, на сегодняшний день ... которые вы разрабатываете для iOS 5 с использованием функций iOS 5.После того, как вы закончите, проведите некоторое регрессионное тестирование на iOS 4. Что бы не сломалось, переписайте или позвольте приложению делать что-то другое во время выполнения (вы можете проверить, будет ли объект отвечать на метод перед его вызовом;)).Это позволит вам использовать все приятные вещи iOS 5 с наименьшим «улаживанием».Моя команда создала некоторые из новых функций в iOS 5 в iOS 4 (работа с контроллером навигации), так что код потребовал бы очень мало изменений.

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