2010-12-07 4 views
2

Я хочу определить исходящий вызов в приложении Android. Фактически я могу обнаружить исходящие звонки, но он также работает и для входящих, и я не хочу этого. Мне нужно, чтобы он работал только для исходящих. Вот мой код ....обнаружение исходящего вызова в PhoneStateListener

boolean ringing = false; 
boolean offhook = false; 

public void onCallStateChanged(int state, String incomingNumber) { 

    switch (state) { 


    case TelephonyManager.CALL_STATE_IDLE: 

if((!ringing)&& offhook){ 
       ///incomming call 
     } 
      break; 
case TelephonyManager.CALL_STATE_RINGING: 

    callerPhoneNumber = incomingNumber; 
Log.d(TAG, "RINGING"); 
ringing = true; 
offhook = false;  
break; 

    case TelephonyManager.CALL_STATE_OFFHOOK: 

Log.d(TAG, "OFFHOOK"); 
offhook = true; 
ringing = false; 
break; 
} 

ответ

6

Вы можете написать вещательный приемник для android.intent.action.NEW_OUTGOING_CALL.

See here Пример кода доступен

+0

Спасибо большое .... но как я могу начать и остановить широковещательный приемник. это wahy, я использую сервис и внедряю phonestatelistener в сервисе, и здесь у меня нет возможности определять исходящий звонок. – Sujit 2010-12-07 17:19:38

Смежные вопросы