恢复AVAudioSession

时间:2012-12-02 18:04:15

标签: objective-c

我正在开发录音应用程序。录制和播放运行良好。当我最小化应用程序并再次打开它,录制和播放两个停止时出现问题。我认为它与AVAudioSession有关。我正在使用的AVAudioSession的代码是:

[[AVAudioSession sharedInstance] setCategory: AVAudioSessionCategoryPlayAndRecord error: nil];

[[AVAudioSession sharedInstance] setActive: YES error: nil];
UInt32 doChangeDefault = 1;
AudioSessionSetProperty(kAudioSessionProperty_OverrideCategoryDefaultToSpeaker, sizeof(doChangeDefault), &doChangeDefault);

请帮帮我。感谢

2 个答案:

答案 0 :(得分:0)

您可能遇到了一个名为音频中断的内容 - 基本上,您的应用程序的后台处理会暂时停止正在运行的音频会话。您可以根据需要处理这些中断并恢复音频会话。有关详细信息,请参阅Audio Session Programming Guide

答案 1 :(得分:0)

我找到了解决方案,我正在使用cocos2d的简单音频引擎来创建问题。简单的音频引擎称为cdaudiomanager,它也正在初始化avaudiosession这是问题。因此,使用avaudioplayer而不是使用简单的音频引擎,现在一切都很好。