2012-01-10 20 views
-2

私のアプリケーションで着信中の中断を検出する必要があります。アプリケーションがアクティブ状態で、着信またはSMSがある場合、私のアプリケーションは、電話の場合には発信番号を取得し、SMSの場合はすべての詳細情報を取得します。私はこれらを私のアプリケーションに保存したい。iPhoneのアプリケーションで通話中断を検出するにはどうすればよいですか?

iPhoneアプリケーションで通話中断と着信SMSアラートを検出することは可能ですか?

答えて

4

CoreTelephony Framework CTCallクラスを使用して、コール状態に関する情報を取得できます。 CTCallCenterを使用すると、コールイベント状態の変更に登録することができますが、アプリケーションは実行状態にある必要があります。アプリケーションをバックグラウンドに移動したときのバックグラウンド時間(最大10分)を要求することができます。これらのAPIは、iOS 4.0以降でのみ使用できます。必要に応じてこれらを使用することができます。この場合

extern NSString const *CTCallStateDialing; 
extern NSString const *CTCallStateIncoming; 
extern NSString const *CTCallStateConnected; 
extern NSString const *CTCallStateDisconnected; 
2

あなたのアプリケーションデリゲートには-applicationDidResignActiveというメッセージが届き、あなたのアプリはUIApplicationDidResignActiveNotificationを聞くことができます。これらは、画面がロックされたときやユーザーがロックボタンを押したときなど、アプリが中断されたときだけでなく、通話によってアプリが中断されたときにも受信されます。

+0

も非常に失礼なように読めます。まあ、私はこれらの代議員を知っているが、私はコール中断を検出したい。 – iphonedev23

+0

@ iphonedev23私はあなたに投票しませんでした。その場合、上記とAnkitの答えのコンボが必要です。しかし、最も簡単なことに貢献していないコミュニティからの迅速な回答を求めています。問題を解決した解決策を受け入れるか、解決策を導きます。 –

4

ApplicationWillResignActiveデリゲートメソッドの呼び出しが....詳しい情報については、これは

任意のポストまでの投票を与えるには早すぎる

関連する問題