Я огляделся по поводу переполнения стека и не нашел решения странной проблемы.
Я начал разрабатывать проект на XCode 3.1, затем решил обновить XCode 3.2.4 и ориентироваться на iPhone3. Затем я следил за темами, связанными с этим, и я изменил Базовый SDK на iOS 4.1 и целевой ОС на 3.0. Все работало нормально, пока я не внес изменения в свой проект.
Действительно, я добавил CoreMedia.framework в свой проект.
Он хорошо работал на симуляторе, но вылетал при запуске на iPhone. Вот журнал, который я могу получить:
<Notice>: dyld: Library not loaded: /System/Library/Frameworks/CoreMedia.framework/CoreMedia
Referenced from: /var/mobile/Applications/72F009B5-82A8-49DC-A5CD-708EE1A4553C/myapp.app/myapp
Reason: image not found
(у меня была такая же проблема с другими фреймворками, например, с CoreVideo)
Я попробовал на iOS4 iPhone, и он работал хорошо, поэтому я думаю, что XCode не связывает / копирует правильную структуру на iPhone. Когда я получаю информацию о фреймворке под XCode, я получаю следующий путь:
/ Разработчик / Платформы / iPhoneOS.platform / Разработчик / SDKs / iPhoneOS4.1.sdk / System / Library / Frameworks / MediaPlayer.framework
Но я получаю тот же путь, когда получаю информацию о платформе первой версии проекта (когда я использовал XCode 3.1). Похоже, что новые добавленные фреймворки имеют неправильную ссылку.
У кого-нибудь есть идеи, как решить эту проблему? Любая помощь будет принята с благодарностью. :)