Поддержка iOS 7 с совместимым с iOS 8 приложением, которое включает в себя расширения

Я создал приложение для iOS 8, используя расширение виджета Today. Мне было интересно, как убедиться, что люди с iOS 7 могут загружать и использовать приложение.

Я могу настроить целевую версию виджета Today iOS 8, но реальная цель iOS 7 для разработки приложений?

Ответ 1

Вы на правильном пути: приложение должно быть построено с помощью SDK iOS 8 и может иметь более раннюю цель развертывания. Цель развертывания виджета - это iOS 8, и он будет игнорироваться на устройствах iOS 7. Вы также можете легко убедиться в этом и в симуляторе.

Если вы используете код между виджетами и приложением, этот код должен работать в iOS 7 и 8, очевидно. В частности, если вы используете фреймворки для совместного использования кода между вашим приложением и виджетами (который рекомендуется Apple), вы должны прочитать этот документ. Однако, кажется, проще просто не использовать (собственные, встроенные) рамки, пока вы нацеливаете iOS 7.

Ответ 2

  • Проверьте версию ОС и выполните резервное поведение для

    NSString * osVersion = [[UIDevice currentDevice] systemVersion];

  • Проверьте, есть ли у вас доступ к функциям, которые вы хотите использовать:

    [YourClass отвечаетSoSelector: @selector (yourDesiredFunction)]

Руководство по совместимости SDK Apple. https://developer.apple.com/library/ios/documentation/developertools/conceptual/cross_development/Introduction/Introduction.html

Ответ 3

hagi прав, но мы попытались запустить приложения с фреймворками на ios7, и он сработал. Но лучший способ - со слабой связью и проверкой.

Это плохой сценарий, потому что в наших рамках есть почти все не-UI-код: модель, парсер и загрузка.