如何在呼叫断开ios sdk时恢复应用程序

时间:2015-07-22 09:57:58

标签: objective-c iphone xcode call

我在网上搜索但一无所获。

我有一个在后台运行的应用。来电时,我的应用程序退出。当我断开呼叫时,它不会继续。

当他们断开连接时,我可以通过这种方式恢复我的应用程序。

1 个答案:

答案 0 :(得分:3)

您可以使用呼叫处理方法恢复您的应用:

在头文件中添加以下文件:

   #import<CoreTelephony/CTCarrier.h>
   #import <CoreTelephony/CTCallCenter.h>
   #import <CoreTelephony/CTCall.h>

  @property (nonatomic, strong) CTCallCenter* callCenter;

//处理实现文件中的调用的方法

 -(void)handleCall
  {
      self.callCenter.callEventHandler = ^(CTCall *call){

    if ([call.callState isEqualToString: CTCallStateConnected])
    {
        NSLog(@"call CTCallStateConnected");
    }
    else if ([call.callState isEqualToString: CTCallStateDialing])
    {
        NSLog(@"call CTCallStateDialing");
    }
    else if ([call.callState isEqualToString: CTCallStateDisconnected])
    {
       //resume back your app background method
        NSLog(@"call CTCallStateDisconnected");
    }
    else if ([call.callState isEqualToString: CTCallStateIncoming])
    {
        NSLog(@"call CTCallStateIncoming");
    }
    else  {
        NSLog(@"call NO");
    }
   };
 }

//在appdelegate.m中,在这里添加handleCall方法

 - (BOOL)application:(UIApplication*)application didFinishLaunchingWithOptions:(NSDictionary*)launchOptions
{
   [self handleCall];
}