[[AVAudioSession sharedInstance] setCategory:AVAudioSessionCategoryPlayAndRecord error:nil];
然后在录音结束后,既就是在它的回调函数
- (void)audioRecorderDidFinishRecording:(AVAudioRecorder *)aRecorder successfully:(BOOL)flag
里加上:[[AVAudioSession sharedInstance] setActive:NO error:nil]; 即可。
(用AVAudioPlayer来播放音乐也同样处理)
获取输入硬 件 获取输出硬件 与IPOD混合 遵从振铃/静音
AVAudioSessionCategoryAmbient 否 是 是 是
AVAudioSessionCategorySoloAmbient 否 是 否 是
AVAudioSessionCategoryPlayback 否 是 否 否
AVAudioSessionCategoryRecord 是 否 否 否
AVAudioSessionCategoryPlayAndRecord 是 是 否 否
如果你想让你的音乐在程序退出后继续在后台播放,
可以这样设置:
[[AVAudioSession sharedInstance] setCategory:AVAudioSessionCategoryPlayAndRecord error:nil];
再在你工程的plist里加上
在info.plist里面添加
<key>Required background modes</key>
<array>
<string>App plays audio</string>
</array>
即可。