Как отладить ошибку воспроизведения AVAudioPlayer? - PullRequest
4 голосов
/ 04 февраля 2010

Я использую AVAudioPlayer для воспроизведения монофонического файла AIFF из каталога документов моего приложения.

На симуляторе [player play] возвращает YES, и я слышу воспроизведение файла.На устройстве метод воспроизведения возвращает NO и ничего не происходит.Я взял файл через органайзер - он отлично воспроизводится на моем Mac и выглядит хорошо сформированным.Я понимаю, что симулятор может получить доступ к кодекам, которые недоступны на iPhone, но это не должно иметь значения в этом случае, не так ли?

Я в растерянности относительно того, как отлаживать это.Есть предложения?

Ответы [ 3 ]

2 голосов
/ 05 февраля 2010

Я задал этот вопрос на форуме Apple, и кто-то там спросил, активировал ли я аудиосессию. Я не сделал, и это решило мою проблему.

0 голосов
/ 04 февраля 2010

Убедитесь, что вы не используете абсолютный путь к аудиофайлу. Когда вы переходите на устройство, пути меняются. Вам необходимо получить путь к папке с документами, используя стандартные методы, а затем добавить относительный путь к вашему аудиофайлу. Таким образом, вы получите правильный путь независимо от оборудования или других изменений.

0 голосов
/ 04 февраля 2010

Создайте делегата на аудиоплеере и переопределите -audioPlayerDecodeErrorDidOccur:error:, чтобы увидеть, не происходит ли какая-либо ошибка.

...