我正在使用AVAudioPlayer在应用程序上播放一些caf文件,它在所有模拟器(iPhone和iPad)和我的iPhone上运行良好,但是当我在iPad上测试它时它不起作用并给出我这个错误:错误域= NSOSStatusErrorDomain代码= -43“操作无法完成。(OSStatus错误-43。)” 奇怪的是,它在iPad上为另一个应用程序工作正常的相同的精确代码.... iPad已更新至IOS版本5.1.1
这是我正在使用的代码:
NSError *error;
NSURL *url = [NSURL fileURLWithPath:[NSString stringWithFormat:@"%@/music.caf", [[NSBundle mainBundle] resourcePath]]];
audioPlayer = [[AVAudioPlayer alloc] initWithContentsOfURL:url error:&error];
audioPlayer.numberOfLoops = 0;
audioPlayer.volume = 0.5;
if (audioPlayer == nil)
NSLog(@"%@", [error description]);
else
{
[audioPlayer prepareToPlay];
[audioPlayer play];
}
在.h文件中我有AVFoundation的导入和
AVAudioPlayer *audioPlayer;
并且AVFoundation.framework就位于其中
我真的对这件事感到疯狂......任何帮助都会非常感激。 谢谢,马西
答案 0 :(得分:0)
NSString* filepath = [[NSBundle mainBundle] pathForResource:@"music" ofType:@"caf"];
NSURL* url = [NSURL fileURLWithPath:filepath];