Подводные камни при написании приложения iOS, поддерживающего iOS 3.1.3 и iOS 4.x

Я хотел бы написать приложение, которое можно было бы запускать на iOS 3.1. 3 до iOS 4.1. Я знаю, как настроить цель развертывания и базовый SDK.

После прочтения документации Apple он в значительной степени полагается на проверку того, доступен ли класс и / или отвечает ли экземпляр определенному селектору.

Теперь мои вопросы :

  1. Что произойдет, если Apple сделает общедоступным класс с 3.1.3 до 4.x? Если просто проверить имя класса, он будет доступен и в iOS 3.1.3? Поэтому в этой версии я бы использовал частный API, который мне не нужен. Как бы вы это проверили? Это действительно проблема или я слишком беспокоюсь?
  2. Вы бы также использовали символы препроцессора, которые определены в версии iOS?
  3. Какую архитектуру мне выбрать, armv6 или armv7? Я думаю, что armv6 работает и на armv7, верно?
  4. Получу ли я помощь от компилятора, если я использую в своем коде что-то, чего нет в iOS 3.1. 3? Проверяется ли это?
  5. Есть ли какие-нибудь заметные подводные камни, о которых мне следует знать?

Я уже смотрел сеанс 130 WWDC10 «Обеспечение перспективности вашего приложения», так что все сказанное там известно.

Спасибо.

6
задан GorillaPatch 1 October 2010 в 13:59
поделиться