Я столкнулся с проблемами, пытаясь включить некоторые специфичные для iOS5 библиотеки в приложение, предназначенное как для iOS5, так и для iOS4.3. Я прошел следующие шаги:
слабо связан с фреймворком Twitter, установив его как необязательный в «Связывать двоичные файлы с библиотеками»
добавил его в качестве основы для iOS5.0 SDK в Другие флаги компоновщика с `-framework Twitter.framework '
условно связал каркас в заголовке класса:
#if defined(__IPHONE_5_0) && __IPHONE_OS_VERSION_MAX_ALLOWED >= __IPHONE_5_0
#import <Twitter/Twitter.h>
#import <Accounts/Accounts.h>
#endif
затем в самом методе я проверяю, настроен ли пользователь на Twitter:
if ([TWTweetComposeViewController class]) {
self.canTweet = [TWTweetComposeViewController canSendTweet];
}
Это прекрасно работает на симуляторах 5.0 и 4.3. Однако у меня проблемы с его запуском или архивированием на реальных устройствах.
Когда у меня подключен 3GS с 5.0 или 4 с 5.0, оба появляются в раскрывающемся списке Схема дважды. Выбор верхнего и попытка построить или запустить проект завершается с ошибкой Use of unidentified identifier 'TWTweetComposeViewController'
.
При использовании второй записи устройства сборка завершается с ошибкой ld: framework not found Twitter.framework
.
Я уверен, что кое-что мне здесь не хватает, но я в тупике. Кто-нибудь может посоветовать?