小编Dav*_*ith的帖子

检测AVAudioSession何时被"剔除"

我正在开发一个Podcast应用程序.这会使用AVAudioSessionCategoryPlayback会话类型播放音频.这几乎可以完成我想要它做的所有事情.它会暂停其他播放的音乐,当有来电时它会被打断并且通常可以按照我想要的方式工作.

一个例外.当播放更高优先级的音频时(例如,当运行逐向导航应用程序时),我的应用程序中的音频会在音量上下降,但会继续运行.这造成了两种不希望的声音的可怕混合.我宁愿选择我的应用程序中的音频在过度播放的声音中暂停,然后在完成后再次继续.

我尝试过更改不同的AVAudioSession属性AVAudioSessionCategoryOptionMixWithOthers,但这些只会改变低优先级声音与我的应用程序混合的方式.它们不会改变我的如何与更高优先级的声音混合.我也试过观察它的otherAudioPlaying属性,sharedSession但是当我将这些短片重叠时,这并没有引发变化.

有没有办法检测我的应用程序中的音频何时被躲避,以便我可以暂停它?或者,为了防止我的应用程序的音频被躲避,以便将这些其他声音视为中断?

谢谢.

iphone ios avaudiosession avplayer

16
推荐指数
2
解决办法
2493
查看次数

标签 统计

avaudiosession ×1

avplayer ×1

ios ×1

iphone ×1