2015-09-25 57 views
1

我只是将新的ReplayKit加入我的iOS游戏中,并试图用startRecordingWithMicrophoneEnabled开始记录。然而,游戏的背景音乐,通过AVAudioPlayer,将在1秒或2秒后死亡。我检查了所有的接口内AVAudioPlayerDelegate但这些都不被触发:iOS 9 ReplayKit随机杀掉AVAudioPlayer

audioPlayerDidFinishPlaying 
audioPlayerBeginInterruption 
audioPlayerEndInterruption 

没有任何人有这个想法?

回答

1

不知道原因,但找到了散步。

我不能说出其中的原因,但似乎工作AVAudioPlayer实例将成为无效状态,而不触发AVAudioPlayerDelegate的任何接口。那么简单地调用pause/resume就没用了。

我曾尝试是杀死工作AVAudioPlayer实例,并创建一个新的在两个startRecordingWithMicrophoneEnabledstopRecordingWithHandler的回调再次播放同样的音乐。

音乐可能会暂停几毫秒,但它比静音好。

+0

你能显示代码吗? – Viper

+0

@Viper代码非常简单:将旧的'AVAudioPlayer'实例设置为'nil',然后将[[AVAudioPlayer alloc] init]'一个新实例。也许你需要保存AVAudioPlayer的'currentTime'并将其设置回新的实例。 – jayatubi