要从应用程序Spotify或音乐应用程序启用背景音乐,我使用以下代码:
do
{
try AVAudioSession.sharedInstance().setCategory(AVAudioSessionCategoryAmbient)
try AVAudioSession.sharedInstance().setActive(true)
}
catch let error as NSError
{
print(error)
}但我如何才能逆转这一点,停止播放背景音乐呢?
发布于 2016-01-15 00:19:19
根据the documentation的说法,主要的播放音频会话类别为:
AVAudioSessionCategoryAmbient
当你使用此类别时,来自其他应用程序的音频会与你的音频混合。
AVAudioSessionCategorySoloAmbient
默认情况下,使用此类别意味着您的应用程序的音频是不可混合的-激活您的会话将中断任何其他音频会话,这些音频会话也是不可混合的。
AVAudioSessionCategoryPlayback
默认情况下,使用此类别意味着您的应用程序的音频是不可混合的-激活您的会话将中断任何其他音频会话,这些音频会话也是不可混合的。
因此,您故意选择了唯一不会使不可混合的背景音频静音的回放类别。如果您确实想要静音不可混合的背景音频,请选择其他类别之一。在任何时候更改类别都没有错。
发布于 2019-05-01 16:52:09
private func setIsAudioPlaysInBackground(isPlay: Bool) {
if isPlay {
try? AVAudioSession.sharedInstance().setCategory(AVAudioSession.Category.ambient)
} else {
try? AVAudioSession.sharedInstance().setCategory(AVAudioSession.Category.playback)
}
try? AVAudioSession.sharedInstance().setActive(true)
}发布于 2016-01-14 23:44:03
你有没有试过这个代码?
AVAudioSession.sharedInstance().setActive(false)我还没有测试过它,但我认为它会停止音乐。
https://stackoverflow.com/questions/34793076
复制相似问题