如何在ios中恢复音频?

问题描述 投票:10回答:4

我正在使用Audioplayer播放5-10秒的音频文件。我的应用程序允许其他应用的背景音乐。在播放我的音频时,我正在停用其他音乐

 [[AVAudioSession sharedInstance] setActive:YES withOptions:AVAudioSessionSetActiveOptionNotifyOthersOnDeactivation error:nil];

完成音频后,我想播放已停用的音乐。

这有可能在AVAudioPlayerAVAudioSession?或者哪个框架支持这种恢复功能?

ios audio ios7 avfoundation
4个回答
6
投票

播放声音后,停用AVAudioSession

[[AVAudioSession sharedInstance] setActive:NO withOptions:AVAudioSessionSetActiveOptionNotifyOthersOnDeactivation error:nil];

0
投票

您可以为所有音频通话创建课程。

或者如果您知道正在播放的内容,您可以将它们保存在一个阵列中并播放它们。

该框架不允许您执行您想要的操作。

我建议为任何音频调用制作自己的包装类。


0
投票

我做了一些搜索,找到了this post

从链接的答案:

[[AVAudioSession sharedInstance] setActive:NO withFlags:AVAudioSessionSetActiveOptionNotifyOthersOnDeactivation error:&error];每当您在应用程序中不需要音频会话时(即,当您没有输出任何声音时),您应该停用它。在有意义的地方,您应该使用此方法,以便通知任何背景音频并可以恢复(接收此通知的应用程序不一定必须恢复)。

我还没有确认它是否有效,但它是尝试的东西,我希望它有所帮助。


0
投票

@gabuh的回答,翻译成Swift:

try? AVAudioSession.sharedInstance().setActive(false, options: .notifyOthersOnDeactivation)
© www.soinside.com 2019 - 2024. All rights reserved.