ios 撥打電話系統回調函數

當咱們使用系統的撥打電話函數撥打電話時,想獲取如今電話的狀態,可使用下面的函數得到狀態。ios

使用方法:app

1.引入CoreTelephony.frameWork 函數

2. 在APPDelegate中作以下定義與說明.net

  • #import <CoreTelephony/CTCall.h>
  • #import <CoreTelephony/CTCallCenter.h>
  • @interface AppDelegate ()   
  • {  
  •     CTCallCenter *callCenter;  
  • }  
  • @end  
  • - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions  
  • {  
  •     [self callCallBack];  
  • }  
  1. - (void)callCallBack  
  2. {  
  3.     callCenter = [[CTCallCenter alloc] init];  
  4.     callCenter.callEventHandler = ^(CTCall* call) {  
  5.         if ([call.callState isEqualToString:CTCallStateDisconnected])  
  6.         {  
  7.             NSLog(@"Call has been disconnected");  
  8.         }  
  9.         else if ([call.callState isEqualToString:CTCallStateConnected])  
  10.         {  
  11.             NSLog(@"Call has just been connected");  
  12.         }  
  13.         else if([call.callState isEqualToString:CTCallStateIncoming])  
  14.         {  
  15.             NSLog(@"Call is incoming");  
  16.         }  
  17.         else if ([call.callState isEqualToString:CTCallStateDialing])  
  18.         {  
  19.             NSLog(@"call is dialing");  
  20.         }  
  21.         else  
  22.         {  
  23.             NSLog(@"Nothing is done");  
  24.         }  
  25.     };  
  26. }  

3.  在ViewController中調用系統的撥打電話函數,而後就會回調剛剛上面的callcallBack中的ios系統提供的方法。get

[[UIApplication sharedApplication] openURL:[NSURL URLWithString:str]]it

相關文章
相關標籤/搜索