2013-07-26 5 views
3

Попытка это:AVAudioSession setCategory ошибка

[[AVAudioSession sharedInstance] setCategory:AVAudioSessionCategoryPlayback error:&error]; 

if (error) { 
    NSLog(@"Error setting category: %@", [error description]); 
} 

Получение ошибки назад «Ошибка установки категории: UIView», но я не уверен, как идти о фиксации этого. Не совсем уверен, что это говорит мне.

Помогите пожалуйста!

EDIT

Воспроизведение аудио:

NSURL *audioFileURL = [[NSBundle mainBundle] URLForResource:@"DemoSong" withExtension:@"m4a"]; 
NSError *error; 

self.audioPlayer = [[AVAudioPlayer alloc] initWithContentsOfURL:audioFileURL error:&error]; 

if (error) { 
    NSLog(@"%@", [error localizedDescription]); 
} 

[_audioPlayer setNumberOfLoops:-1]; 
[_audioPlayer setMeteringEnabled:YES]; 
[_visualizer setAudioPlayer:_audioPlayer]; 

[_audioPlayer prepareToPlay]; 
[_audioPlayer play]; 
NSLog(@"play audio"); 

ответ

7

Вы должны проверить возвращаемое значение [[AVAudioSession sharedInstance] setCategory:AVAudioSessionCategoryPlayback error:&error], так как оно возвращает YES, если оно выполнено успешно, и NO, если оно не выполнено.

Пересмотрите только переменную error, если возвращаемое значение setCategory:error: равно NO.

+0

да, это тоже; +1 к вам –

+0

Проверка возвращаемого значения дает мне правду. Звук все еще не играет. – Lagoo87

+0

Можете ли вы изменить свой вопрос с помощью кода, используемого для фактического воспроизведения звука? – UpL1nK

0

Попробуйте изменить свой код:

NSError * error = nil; 
BOOL success = [[AVAudioSession sharedInstance] setCategory:AVAudioSessionCategoryPlayback error:&error]; 
if(NO == success) 
{ 
    NSLog(@"Error setting category: %@", [error localizedDescription]) 
} 

и посмотреть, если вы получаете что-то более описательным и полезным.

+0

В результате локализованного описания возникла ошибка. – Lagoo87

+0

Я внес изменения в свой код. Может быть, это поможет? –

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