2012-02-08 5 views
0

Итак, я пытаюсь воспроизвести WAV-файл в iOS5, и я получаю предупреждение, которое приводит к SIGABRT и вообще нерабочим кодам.Использование AVAudioPlayer в iOS5?

NSURL *soundUrl = [NSURL fileURLWithPath:[NSString stringWithFormat:@"%@/Resources/Sounds/01_main_menu_list.wav", [[NSBundle mainBundle] resourcePath]]]; 
self.audioPlayer = [[AVAudioPlayer alloc] initWithContentsOfURL:soundUrl error:nil]; 
[_audioPlayer setDelegate:self]; 
[_audioPlayer play]; 

Это дает мне ошибку «Посылка„ViewController * Const __strong“для параметра несовместимого типа„ид“.

У меня буквально не знаю, почему, я следовал полдюжины примеров и гряда пустой Я хотел бы указатель в правильном направлении

ответ

0

Оказалось, что это проблема с выпуском ARC, я исправил ее, добавив пару @property и @synthesize для рассматриваемого AVAudioPlayer и объявив ее сильной. Он избавился от всех этих ошибок и без проблем воспроизвел файл.

2

Это должно работать:..

NSURL* soundUrl = [NSURL fileURLWithPath:[[NSBundle mainBundle] pathForResource:@"01_main_menu_list" ofType:@"wav"]]; 
audioPlayer = [[AVAudioPlayer alloc] initWithContentsOfURL:soundUrl error:nil]; 
audioPlayer.delegate = self; 
[audioPlayer play]; 

Если нет, то я думаю, что есть что-то не так с файлом WAV Может быть. кодирование?

+0

Это игра, но предупреждение все еще существует. Любая идея, что это значит и как я могу постучать по голове? Это было пробурено в голову, что предупреждение - это всего лишь ошибка, которая еще не разбилась :) – Luke

+0

На какой строке кода вы получаете предупреждение и что именно оно говорит? –

+0

лимит делегата, и он точно говорит о том, что я написал выше. «Отправка "ViewController * Const __strong" для параметра несовместимого типа 'ид' – Luke

Смежные вопросы