我目前正在使用swift和spritekit构建游戏。我想在代码的某个部分播放声音。目前我正在使用AVAudioPlayer。我目前正在使用这种方法。
player = try AVAudioPlayer(contentsOfURL: url)
player.prepareToPlay()
player.play()
声音播放正确,但如果我在播放声音的同时通过iTunes听音乐,我的音乐会停止并播放声音。我过去玩过其他人的游戏,其中游戏声音效果发挥并且不影响已经从另一个应用播放的音乐。可以解释一下这是如何实现的。谢谢你。
答案 0 :(得分:2)
您需要将音频会话设置为使用允许混音的类别。默认情况下,它使用AVAudioSessionCategorySoloAmbient
,这是不可混合的。
我不知道哪个类别符合您的需求,但AVAudioSessionCategoryAmbient
允许混音。
AVAudioSession.sharedInstance().setCategory(AVAudioSessionCategoryAmbient)