如果項(xiàng)目需求中需要我們針對(duì)撥出去的電話的不同狀態(tài)進(jìn)行不同的操作躁锡,那就需要用到CTCallCenter了钢猛。這個(gè)就是專門用來監(jiān)聽電話通話的狀態(tài)的類吼砂。具體使用是在撥打電話操作開始后進(jìn)行初始化操作:
首先要引入系統(tǒng)庫(kù)頭文件:
#import <CoreTelephony/CTCallCenter.h>
#import <CoreTelephony/CTCall.h>
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");//正在撥號(hào)
}
else
{
? ? ? ? NSLog(@"Nothing is done");
}
};
根據(jù)上面的各個(gè)狀態(tài)類型我們就可以做我們想要進(jìn)行的操作了卢鹦。