2011-08-22 89 views
3

我使用AVFoundation框架来播放声音文件。我遇到的问题是,当音频文件被使用时,它会停止播放音乐,我不会说连续播放这两个文件,而是播放声音文件,然后在停止播放音乐文件的时候拿起iPod音乐。有什么办法可以使用AVFoundation是这种方式吗?还是有更好的框架呢?使AVFoundation不停止iPod音乐

这里是我的代码如下所示:

click = [NSURL fileURLWithPath:[NSString stringWithFormat:@"@/Click.WAV", [[NSBundle mainBundle] resourcePath]]]; 
audioPlayer = [[AVAudioPlayer alloc]initWithContentsOfURL:click error:nil]; 
audioPlayer.numberOfLoops = 1; 
[click release]; 
[audioPlayer play]; 

此代码工作完全没问题,我不得不键入出来,所以忽略任何问题,有可能是它。

感谢, 雅各

回答

3

可以使用AVAudioSession类来改变你的应用程序的音频“类别”:因此,你可以让它在iPod音乐播放上面。使用-setCategory:error:的方法,你可能会想要使用AVAudioSessionCategoryAmbient。更多信息可在Audio Session Programming Guide中找到。

+0

好吧,似乎工作,但现在当我加载应用程序的音乐被杀害,我可以通过多任务启动备份,然后尝试我的声音,它的作品。我如何得到它,所以它不会杀死音乐。继承人我做了什么:'[[AVAudioSession sharedInstance] setCategory:AVAudioSessionCategoryAmbient error:nil];' PS:这是在我的主视图控制器 – Jacob

+0

你开始你的音频播放器之前运行吗? – jtbandes

+0

我说过[点击发布]后我跑了它; – Jacob