2013-10-15 3 views
0

Я пытаюсь воспроизвести звук одним нажатием кнопки. Но когда я запускаю приложение, он падает, и я получаю Thread 1 : signal SIGABRT.Мое приложение вылетает при воспроизведении звука

Это мой код:

.h файл

#import <AVFoundation/AVFoundation.h> 

@interface HljodViewController : UIViewController <AVAudioPlayerDelegate>{ 

} 

-(IBAction)playsound; 

.m файл

-(IBAction)playsound { 

    NSString *path = [[NSBundle mainBundle] pathForResource:@"Geese_4" ofType:@"mp3"]; 
    AVAudioPlayer* theAudio = [[AVAudioPlayer alloc] initWithContentsOfURL:[NSURL fileURLWithPath:path] error:NULL]; 
    theAudio.numberOfLoops = 1; 
    [theAudio play]; 
} 
+1

Добавлена ​​[общая точка останова исключение] (https://developer.apple.com/library/ios/recipes/xcode_help-breakpoint_navigator /articles/adding_an_exception_breakpoint.html#//apple_ref/doc/uid/TP40010433-CH1-SW1). – rckoenes

ответ

0

Просто взгляните на ниже показанных ссылок, и убедитесь, что где вы совершаете ошибку ?

http://looksok.wordpress.com/2013/01/19/ios-tutorial-play-sound/

http://www.techotopia.com/index.php/Playing_Audio_on_an_iPhone_using_AVAudioPlayer_(iOS_6)

http://code-and-coffee.blogspot.in/2012/09/how-to-play-audio-in-ios.html

+0

Я следил за этими инструкциями, теперь нет ошибки, но я не слышу звука, когда нажимаю кнопку, я пробовал симулятор и мой телефон и ничего – Sleeperinn

1

Никто не может сказать вам, как решить проблему, если вы не захватить NSError. Я предлагаю вам сделать следующее:

NSError *outError = nil; 
AVAudioPlayer* theAudio = [[AVAudioPlayer alloc] initWithContentsOfURL:[NSURL fileURLWithPath:path] error:&outError]; 
if (outError) 
{ 
    NSLog(@"%@", [outError localizedDescription]); 
} 
... // continue on to happy time 
0

попробовать это:

[[AVAudioSession sharedInstance] setCategory:AVAudioSessionCategoryPlayback error:nil]; 
[[AVAudioSession sharedInstance] setActive:YES error:nil]; 
NSString *path = [[NSBundle mainBundle] pathForResource:@"yourfile" ofType:@"mp3"]; 
NSError *error; 
AVAudioPlayer *sound = [[AVAudioPlayer alloc] initWithContentsOfURL:[NSURL fileURLWithPath:path] error:&error]; 
[sound play]; 
Смежные вопросы