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から利用できる方法はありますか?