我使用 iOS SDK 4.0 中引入的 CoreTelephony 框架来了解来电及其挂断状态。
CTTelephonyNetworkInfo *tni = [[CTTelephonyNetworkInfo alloc] init];
callCenter = [[CTCallCenter alloc] init];
crtCarrierName = tni.subscriberCellularProvider.carrierName;
[callCenter setCallEventHandler:^(CTCall *call) {
if ([[call callState] isEqual:CTCallStateConnected]) {
//this call has just connected
} else if ([[call callState] isEqual:CTCallStateDisconnected]) {
//this call has just ended (dropped/hung up/etc)
}
}];
当我的应用程序处于后台时,我可以使用此事件处理程序来跟踪呼叫状态吗?我还可以从 CTCall 对象中获取来电电话号码吗?或者还有其他方法。
我不想使用私有 API。Apple iOS SDK 有没有可用的方法?