2012-11-29 3 views
7

È possibile recuperare lo stato di inoltro chiamate su Android?Come recuperare lo stato di inoltro chiamate nel codice througn di Android?

enter image description here

Utilizzando questo codice mostra solo un popup con l'attuale stato, ma mi chiedevo se è possibile ottenere il numero effettivo che viene impostato se uno

Intent intentCallForward = new Intent(Intent.ACTION_CALL);        
Uri uri = Uri.fromParts("tel", "*#21#", "#"); 
intentCallForward.setData(uri);         
startActivity(intentCallForward); 

risposta

1

E 'semplice. Tutto ciò di cui hai bisogno è un BroadCast per monitorare il tuo stato del telefono. Prova qualcosa del genere:

public class CallBroadcastReceiver extends BroadcastReceiver 
{ 
    public static String numberToCall; 
    public void onReceive(Context context, Intent intent) { 
     Log.d("CallForwardingBroadCast", "CallBroadcastReceiver::onReceive got Intent: " + intent.toString()); 
     if (intent.getAction().equals(Intent.ACTION_NEW_OUTGOING_CALL)) { 
      numberToCall = intent.getStringExtra(Intent.EXTRA_PHONE_NUMBER); 
      Log.d("CallRecorder", "CallBroadcastReceiver intent has EXTRA_PHONE_NUMBER: " + numberToCall); 
     } 
    } 
}