Obj C只是播放mp3

时间:2011-05-10 01:02:53

标签: iphone objective-c audio mp3

我在至少三个教程中看到了这一小段代码,当我按下连接到我得到的动作的按钮时:

  

'NSInvalidArgumentException',原因:' * - [NSURL initFileURLWithPath:]:nil string parameter'

它说我的路径为空,这是根据控制台。对我缺少什么有任何想法?

-(IBAction) pushStart
{
    NSString *arrowSoundPath = [[NSBundle mainBundle] pathForResource:@"Arrow.mp3" ofType:@"mp3"];
    NSLog(@"%@",arrowSoundPath);
    AVAudioPlayer *theAudio = [[AVAudioPlayer alloc] initWithContentsOfURL:[NSURL fileURLWithPath:arrowSoundPath] error:NULL];
    theAudio.delegate = self;
    [theAudio play];
}

1 个答案:

答案 0 :(得分:6)

从第一个参数中移除'.mp3'扩展名为-pathForResource:ofType:。它应该是[[NSBundle mainBundle] pathForResource:@"Arrow" ofType:@"mp3"]。你现在的方式,-pathForResource:ofType:正在寻找一个名为'Arrow.mp3.mp3'的文件,该文件不存在,因此返回nil,这会导致你的错误。