我正在使用Audioplayer播放5-10秒的音频文件。我的应用程序允许其他应用程序的背景音乐。在播放我的音频时,我使用以下命令停用其他音乐
[[AVAudioSession sharedInstance] setActive:YES withOptions:AVAudioSessionSetActiveOptionNotifyOthersOnDeactivation error:nil];在完成我的音频后,我想播放停用的音乐。
这在AVAudioPlayer和AVAudioSession中是可能的吗?或者,哪个框架支持此恢复功能?
发布于 2015-05-05 19:14:14
播放声音后,停用您的AVAudioSession
[[AVAudioSession sharedInstance] setActive:NO withOptions:AVAudioSessionSetActiveOptionNotifyOthersOnDeactivation error:nil];发布于 2015-05-05 20:04:51
你可以为你所有的音频呼叫创建一个类。
或者,如果您知道正在播放什么,您可以将它们保存在一个数组中,然后回放它们。
这个框架不允许你做你想做的事情。
我建议为任何音频调用创建自己的包装类。
发布于 2015-05-11 05:01:56
我做了一些搜索,找到了this post。
从链接的答案中:
[[AVAudioSession sharedInstance] setActive:NO withFlags:AVAudioSessionSetActiveOptionNotifyOthersOnDeactivation error:&error];当您的应用程序中不需要音频会话时(即,当您不输出任何声音时),您应该停用它。在有意义的情况下,您应该使用此方法,以便通知任何背景音频并可以恢复(接收此通知的应用程序不必恢复)。
我还没有确认它是否有效,但这是一些值得尝试的东西,我希望它能有所帮助。
https://stackoverflow.com/questions/29920157
复制相似问题