I can handle call interruption using beginInterruption and endInterruption in the foreground application but when my application is in the background, how should I handle the call interruption?
Have the interruption handler which looks for the interruption state being kAudioSessionBeginInterruption and kAudioSessionEndInterruption. That should do the trick.
Do any processing (for interrruption handling) inside this handler.