在我的应用程序中,我使用AudioServicesPlaySystemSound播放小的caf文件。 当我在iPhone上运行我的应用程序并通过横向按钮更改音量时,应用程序的声音会发生变化 也是在iPad上,我应用中的声音音量总是一样的。 也许是因为在iPhone上是铃声音量,而在iPad上则是设备音量。
如何在iPad上获得相同的iPhone行为?
请原谅我的英语不好......
答案 0 :(得分:5)
我遇到了同样的问题但是如果你用按钮更改系统声音音量,所有系统声音都会随着你的应用程序一起被修改。我发现这个真的很烦人。 解决方案是使用AVAudioPlayer代替AudioServices:虽然简单,但方式更通用。在那里,您可以通过编程方式精细调整每个声音的音量。
NSURL *soundurl = [[NSBundle mainBundle] URLForResource: @"mysound" withExtension: @"caf"];
AVAudioPlayer *mySoundPlayer =[[AVAudioPlayer alloc] initWithContentsOfURL:soundurl error:&error];
mySoundPlayer .volume=0.4f; //between 0 and 1
[mySoundPlayer prepareToPlay];
mySoundPlayer.numberOfLoops=0; //or more if needed
[mySoundPlayer play];