我想在开始录制之前麦克风中断结束时通知我的应用。
例如,我的应用程序试图从后台开始录制,在此期间,如果任何其他应用程序(如Skype)正在访问麦克风,我不应该这样做。所以我想开始注册/观察中断,这样当Skype调用结束时,应该通知我的应用程序。
我只能在app正在录制和中断开始时才能实现。当即将开始录制时,如果中断未结束,我将收到通知。 请帮忙 。
我尝试使用
注册[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(handleAudioSessionInterruption:) name:AVAudioSessionInterruptionNotification object:[AVAudioSession sharedInstance]];
// observe the interruption begin / end
- (void)handleAudioSessionInterruption:(NSNotification*)notification
{
AVAudioSessionInterruptionType interruptionType = [notification.userInfo[AVAudioSessionInterruptionTypeKey] unsignedIntegerValue];
AVAudioSessionInterruptionOptions interruptionOption = [notification.userInfo[AVAudioSessionInterruptionOptionKey] unsignedIntegerValue];
NSLog(@"interruptionType:%lu",(unsigned long)interruptionType);
switch (interruptionType) {
case AVAudioSessionInterruptionTypeBegan:{
NSLog(@"interruption began");
break;
}
case AVAudioSessionInterruptionTypeEnded:{
NSLog(@"interruption ended");
break;
}
default:
break;
}
}