2010-12-14 87 views
0

我正在开发一个程序,它在按下按钮时播放短样本。问题是它只能通过耳机输出而不是通过设备的扬声器播放。我试过了.wav和.aiff以及AVAudioPlayer和SystemSoundID。在模拟器上,我可以听到声音。我正在使用iPod Touch第4代。运行iOS 4.1。示例代码:iOS音频样本只能在耳机输出上播放

NSString *soundFile = [[NSBundle mainBundle] pathForResource:@"button" ofType:@"wav"]; 
NSURL *url = [NSURL fileURLWithPath:soundFile]; 
AudioServicesCreateSystemSoundID((CFURLRef)url, &buttonID); 
AudioServicesPlaySystemSound(buttonID); 

编辑(找到解决方案):我试着用另一个.wav文件,它工作。奇怪,因为iOS支持原始的.wav格式。

回答

0

听起来像你已经解决了这个问题,但作为一个单挑,你应该只使用SystemSoundID风格回放用户界面相关的声音。

如果音频是应用程序的关键部分,则需要设置适当的AVAudioSession类别并使用(例如)AVAudioPlayer播放方法。

然后再次,这可能不相关。 :-)