Отсутствует AVFoundation.framework

AVFoundation.framework находится не там, где указано в документации. У меня установлен iPhone SDK 2.2 (никогда не устанавливались предыдущие версии SDK), и я не могу найти эту папку под /System/Library/Frameworks

Я нашел это под

 /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS2.2.sdk/System/Library/Frameworks/

папку, но если я добавлю ее из этого места, компилятор не сможет найти заголовочные файлы. Я попытался скопировать всю папку AVFoundation.framework в /System/Library/Framework, но файлы заголовков все еще не найдены.

Как я могу использовать AVFoundation классы?

Спасибо, Алекс


person subjective-c    schedule 22.12.2008    source источник
comment
Хм, я так понимаю, этот фреймворк не будет работать на iPhone OS 2.1, верно?   -  person Mihai Damian    schedule 18.02.2009
comment
Нет - фреймворк был добавлен только начиная с ОС 2.2.   -  person Adi    schedule 30.06.2009


Ответы (3)


Я использовал классы AVFoundation в своем коде и добавил их так же, как и вы. Вы не можете просматривать заголовки по какой-то неизвестной причине, но размещение этого в заголовочном файле вашего класса прекрасно компилируется:

#import <AVFoundation/AVAudioPlayer.h>

Я отправил свое приложение и получил его одобрение, поэтому я не думаю, что в этом подходе есть что-то неправильное. Ссылка на AVFoundation остается красной в XCode, но, похоже, работает нормально. Удаление ссылки на фреймворк вызывает ошибки компиляции, поэтому она определенно должна быть там.

person rustyshelf    schedule 22.12.2008
comment
Спасибо! Ваш ответ заставил меня понять, что я импортировал AVFoundation.h вместо AVAudioPlayer.h, и именно поэтому он не скомпилировался. - person subjective-c; 22.12.2008
comment
в этом случае вы должны пометить этот вопрос как ответ, вот как работает все переполнение стека. Вы также можете проголосовать за мой ответ, в зависимости от того, хорош он или нет. - person rustyshelf; 22.12.2008

У меня были всевозможные проблемы, пока я не понял, что мне тоже нужно изменить «активный исполняемый файл» на «iPhone Simulator 2.2». Вот шаги, которые я предпринял:

Добавьте фреймворк AVFoundation в свой проект. Щелкните папку Frameworks, удерживая нажатой клавишу Ctrl, и выберите «Добавить существующие рамки». Каталог фреймворка по умолчанию в «/System/Frameworks» может не содержать новый файл фреймворка AVFoundation, поэтому вам нужно будет очень глубоко перейти в каталог iPhone SDK, чтобы найти файл. Я нашел свой в /Developer/Platforms/iPhoneSimulator.platform/developer/SDKs/iPhoneSimulator2.2.sdk/System/Library/Framework. (Да, это так глубоко!!).

Теперь в своем XCode выберите свой Active SDK как «Simulator — iPhone OS 2.2», а «Active Executable» — как «iPhone Simulator (2.2)».

Это решило проблему для меня. Надеюсь, у вас та же проблема.

person user70242    schedule 24.02.2009

Я нашел свой по адресу:

/Разработчик/Платформы/iPhoneOS.platform/Разработчик/SDK/iPhoneOS3.0.sdk/Система/Библиотека/Фреймворки

person Aneesh Abraham    schedule 16.03.2010