2012-02-24 109 views
3

我使用此代码,但它不工作;AVAudioPlayer错误

导入:

#import <AudioToolbox/AudioServices.h> 

头文件:

AVAudioPlayer *_audioPlayer; 

代码:

NSURL *url = [NSURL fileURLWithPath:[NSString stringWithFormat:@"%@/welcome.mp3", [[NSBundle mainBundle] resourcePath]]]; 

    NSError *error; 
    _audioPlayer = [[AVAudioPlayer alloc] initWithContentsOfURL:url error:&error]; 
    _audioPlayer.numberOfLoops = 0; 

if (_audioPlayer == nil) 
{ 
    NSLog(@"%@", [error description]); 
} 
else 
{ 
    [_audioPlayer play]; 

    NSLog(@"PLAY"); 

} 

的的NSLog:

Error Domain=NSOSStatusErrorDomain Code=-43 "The operation couldn’t be completed. (OSStatus error -43.)" 

它不工作在我的iPhone(5.1)的iPad(5.0)iPhone 5.0模拟器。

任何人都知道我该如何解决这个问题?

回答

3

如果在指定的路径中找不到文件,则会出现该错误。

此外,请检查您是否有文件welcome.mp3并且它与应用程序目标捆绑在一起。为此,请选择目标,请转至构建阶段选项卡并确保文件在列表中复制包资源。如果不存在,请添加它。