我正在使用SystemSound的框架在我的应用程序中播放声音。对于具有IOS3的设备,它可以正常工作。但最近我将操作系统更新为IOS4 我的卷有一个奇怪的问题。现在我无法在游戏过程中改变声音的音量,似乎这个框架正在使用铃声音量而我无法在应用程序中更改此音量。我有几个问题。
我使用的代码是这样的:
SystemSoundID aSoundID;
OSStatus error = AudioServicesCreateSystemSoundID((CFURLRef)aFileURL, &aSoundID);
if (error == kAudioServicesNoError)
self.soundID = aSoundID;
.
.
.
AudioServicesPlaySystemSound(self.soundID);
我真的很感谢你的帮助!
谢谢,
Juan Pablo
答案 0 :(得分:2)
我自己没有使用过音频,但我确实找到了一些看似相关的有趣内容(看看目前还没有人真正回答你的问题)。
我可能误解了这个问题,但根据this question中的答案,如果你正在播放系统声音,那么你就无法控制它。
但是,AVAudioPlayer Class应该包含控制声音和音量等所需的一切。尝试使用-initWithContentsOfURL:error:
,–prepareToPlay
和-play
方法,以及volume
属性 - 我认为它会让你到达目的地。
答案 1 :(得分:0)
1& 2)我对iOS 4有同样的问题,我认为这是4.0+的预期行为我发现这是因为我没有设置Session类别:
3)我做了以下事情,现在它正在运作。
NSError *setCategoryError = nil;
[[AVAudioSession sharedInstance] setCategory: AVAudioSessionCategoryPlayback error: &setCategoryError];
if (setCategoryError) {
//handle error
}