2010-04-14 42 views

回答

4

您可以使用PhoneStateLisenter來偵聽呼叫狀態的變化。

所以你聽聽LISTEN_CALL_STATE的變化。

onCallStateChanged方法。

所以當振鈴狀態更改爲摘機,你知道一個電話已經連接

同一原則適用於閒置摘機在您的情況,聽取了從怠速到摘機的變化,你就會知道你連接到一個電話。

您也可以查看ACTION_NEW_OUTGOING_CALL意圖,Android允許您在撥打電話時「陷入」這種情況,並且您可能能夠獲取結果代碼,說明呼叫是否已連接。

對於DTMF音調看看ToneGenerator,這允許你創建DTMF音調,然後.startTone()應該允許你播放DTMF音調。

但是你不能通過上行鏈路發送DTMF音。

+0

即時呼叫語音響應系統,所以我猜這不是響了?因爲我的日誌在RINGING中沒有顯示在DDMS中,但只有IDLE到OFFHOOK?以及如何添加dtmf音調? – Mikey 2010-04-14 09:49:25

+0

我已將其他信息添加到我的答案中,希望它有幫助 – 2010-04-14 10:01:55

+1

您無法「添加dtmf音調」。您無法將音頻播放到電話流中。充其量,您可以在設備上播放DTMF音調,並且如果設備處於免持話筒模式,那麼這些音調*可能會被麥克風拾取。 – CommonsWare 2010-04-14 11:42:21

相關問題