我正在尝试使用AVAudioPlayer
来播放mp3。这是我的代码:
- (void) playClip {
NSString *mp3File = [[NSBundle mainBundle] pathForResource:@"inFavor" ofType:@"mp3"];
AVAudioPlayer *avPlayer = [[AVAudioPlayer alloc] initWithContentsOfURL:[NSURL fileURLWithPath:mp3File] error:NULL];
[avPlayer play];
}
我引用的文件的名称是“inFavor.mp3”
我对Objective-C有点新意,所以我不确定为什么这不起作用。我正在使用Xcode 5。
答案 0 :(得分:1)
尝试此代码,您需要检查错误。粘贴您错误的日志
NSError *error;
NSString *path = [[NSBundle mainBundle] pathForResource:@"inFavor"
ofType:@"mp3"];
AVAudioPlayer* avPlayer =
[[AVAudioPlayer alloc] initWithContentsOfURL:[NSURL fileURLWithPath:path]
error:&error];
if (error) {
NSLog(@"failed playing error: %@", error);
}else{
//avPlayer.delegate = self;
[avPlayer play];
}
答案 1 :(得分:1)
使AVAudioPlayer成为类的属性,以便在函数超出范围时不会释放它。
@property (strong, nonatomic) AVAudioPlayer* avPlayer;
然后用
初始化self.avPlayer = [[AVAudioPlayer alloc] initWithContentsOfURL:[NSURL fileURLWithPath:mp3File] error:NULL];