當由被叫
回答
爲了知道主叫方是否收到了呼叫,您需要創建一個監聽器。與你的活動作爲 phoneInfo = new PhoneInfo(this);
registerReceiver(phoneInfo, new IntentFilter(Intent.ACTION_NEW_OUTGOING_CALL));
class PhoneInfo extends BroadcastReceiver {
/**
* Getting the System Telephony Service and registering a listener for Voice Call state
*/
@Override
public void onReceive(Context context, Intent intent) {
IncomingCallListener phoneListener = new IncomingCallListener();
TelephonyManager telephony = (TelephonyManager) context.getSystemService(Context.TELEPHONY_SERVICE);
telephony.listen(phoneListener, PhoneStateListener.LISTEN_CALL_STATE);
}
class IncomingCallListener extends PhoneStateListener {
public void onCallStateChanged(int state, String incomingNumber) {
Log.i(logcat,"CALL_STATE changed " + callflag);
switch (state) {
case TelephonyManager.CALL_STATE_IDLE:
Log.i(logcat,"CALL_STATE_IDLE");
//This is where call ends.
break;
case TelephonyManager.CALL_STATE_OFFHOOK:
//This is where we know call is established
break;
case TelephonyManager.CALL_STATE_RINGING:
Log.i(logcat,"CALL_STATE_RINGING");
break;
}
}
}
註冊這個現在使用日誌ü可以看到當撥叫或接收狀態被改變。
感謝您的代碼,我可以註冊與Android清單的接收器? –
是的,你可以,這會給你一個更乾淨的代碼。 –
其實我只是意識到這是我正在運行的當前解決方案,但事實是每個傳出的呼叫都會創建一個新的監聽器,因此我可能在6個呼出後有6個監聽器,您怎麼看? –
- 1. 來電路由的被叫號碼
- 2. 此內部功能的當由呼叫
- 3. 當頁面被路由到
- 4. 得到呼叫由被叫例外VSTO(Word應用程序)拒絕
- 5. UIApplicationDelegate不叫由Unity3d
- 6. Twilio呼叫路由
- 7. 呼叫由用戶
- 8. UILongPressGesture被叫兩次
- 9. onItemSelected被叫遲到
- 10. 檢測主叫和被叫它
- 11. Facebook SDK Android:OnSuccess被叫,但OnCancel不叫
- 12. C#Outlook - 呼叫被拒絕的呼叫
- 13. Backbone.js - 在路由被觸發之前/之後的呼叫方法
- 14. RingOut和呼叫記錄結果無用(當呼叫未被人接聽時)
- 15. 當多個其他人都被呼叫時的單個事件呼叫?
- 16. 呼叫被被叫方拒絕。 (從HRESULT異常:0x80010001(RPC_E_CALL_REJECTED))
- 17. 當默認路由被禁用時,PaginatorHelper包含路由前綴
- 18. 呼叫路由-n在cgi
- 19. 角路由呼叫跨域
- 20. 骨幹路由不能叫
- 21. 骨幹路由不叫
- 22. AS3 ExternaInterface:呼叫在由Flash
- 23. 呼叫預期由C
- 24. 每當didEnterForeground叫做
- 25. 當executorService.shutdown();應該叫
- 26. 呼叫JavaScript函數,當元件被完全加載
- 27. 呼叫PHP函數當鏈接被點擊
- 28. Galaxy S空白電子郵件當被叫
- 29. iOS - 當位置服務被接受時什麼叫做?
- 30. 當呼叫被回答時星號運行腳本
您可以使用http://developer.android.com/reference/android/telephony/PhoneStateListener.html獲取該事件... –
我檢查了電話API,只有當電話是呼叫者,但在一個傳出的電話它不是任何電話狀態(空閒,摘機) –