当咱们使用系统的拨打电话函数拨打电话时,想获取如今电话的状态,可使用下面的函数得到状态。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];
- }
- - (void)callCallBack
- {
- callCenter = [[CTCallCenter alloc] init];
- callCenter.callEventHandler = ^(CTCall* call) {
- if ([call.callState isEqualToString:CTCallStateDisconnected])
- {
- NSLog(@"Call has been disconnected");
- }
- else if ([call.callState isEqualToString:CTCallStateConnected])
- {
- NSLog(@"Call has just been connected");
- }
- else if([call.callState isEqualToString:CTCallStateIncoming])
- {
- NSLog(@"Call is incoming");
- }
- else if ([call.callState isEqualToString:CTCallStateDialing])
- {
- NSLog(@"call is dialing");
- }
- else
- {
- NSLog(@"Nothing is done");
- }
- };
- }
3. 在ViewController中调用系统的拨打电话函数,而后就会回调刚刚上面的callcallBack中的ios系统提供的方法。get
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:str]]it