解決sip來電時後臺播放器暫時靜音的效果

參考:http://blog.csdn.net/xy5811/article/details/8563137 致謝!


在判斷來電狀態的方法裏,當收到來電的狀態時,設置一下,使其它APP的後臺播放爲靜音:

 caseLinphoneCallIncomingReceived:

        {

            //NSDate *start = [NSDate date];

            //NSTimeInterval start =  [timeStart timeIntervalSince1970] * 1000;

            //self.timeStart = [start timeIntervalSince1970] * 1000;

            // CallRecordsModel *model = [[CallRecordsModel alloc]init];

            //model.callDateTimeInterval = self.timeStart;

            

            //來電中止其它APP播放聲音

           NSError *setCategoryError =nil;

           BOOL success = [[AVAudioSessionsharedInstance]

                            setCategory:AVAudioSessionCategorySoloAmbient

                           error: &setCategoryError];

           if (!success) {

                UIAlertView *alert = [[UIAlertViewalloc]initWithTitle:@"來電話啦~"message:@"暫停播放器"delegate:nilcancelButtonTitle:@"OK!"otherButtonTitles:nil];

            

            }

            [selfdisplayIncomingCall:call];

            

           break;

        }


...........


.........

電話掛斷後,再設置恢復:

 caseLinphoneCallEnd:

        {


////.........

               //掛斷電話後恢復播放APP

               NSError *error =nil;

               AVAudioSession *audioSession = [AVAudioSessionsharedInstance];

               BOOL ret = [audioSessionsetActive:YESerror:&error];

               if (!ret)

                {

                    NSLog(@"%s - activate audio session failed with error %@", __func__,[errordescription]);

                }



}




發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章