Domanda

Voglio rilevare chiamata in uscita in applicazione Android. In realtà posso rilevare le chiamate in uscita, ma sta anche lavorando per l'incoming troppo e non voglio questo. Ho bisogno di lavorare solo per uscita. Ecco il mio codice ....

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;
}
È stato utile?

Soluzione

È possibile scrivere un ricevitore broadcast per android.intent.action.NEW_OUTGOING_CALL.

Vedi qui campione codice è disponibile

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top