我使用iOS SDK 4.0中引入的CoreTelephony框架来了解Incoming call& amp;它的状态下降了。
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可以使用吗?
答案 0 :(得分:2)
在官方SDK中没有办法做到这一点,你不能在后台使用它,因为它不属于后台运行类别,除非你的应用程序在后台执行其他操作然后只是监控调用。
您将永远无法获得当前通话的电话号码,因为这是私人数据Apple不允许您访问数据。