Estado de la llamada saliente

Mi consulta es, quiero ser notificado si el receptor en el otro lado recoge mi llamada cuando estoy haciendo una llamada saliente. ¿Es posible con el SDK de Android?

La función onCallStateChanged se llama sólo cuando la persona marca un número (OFFHOOK), desde su teléfono y cuando la persona del receptor de llamadas desconecta la llamada (IDLE), pero no hay ningún parámetro de estado para saber que, la otra persona final ha recibido la llamada ?

public class MyPhoneStateListener extends PhoneStateListener{ public void onCallStateChanged(int state,String incomingNumber){ Log.d("Checking---->",TelephonyManager.ACTION_PHONE_STATE_CHANGED); } } 

Logcat sólo proporciona la siguiente información cuando recibe una llamada en el otro lado:

 01-19 19:33:30.633: DEBUG/CallNotifier(638): stopRing()... (OFFHOOK state) 01-19 19:33:30.662: DEBUG/Ringer(638): stopRing()... 01-19 19:33:30.694: DEBUG/Ringer(638): - stopRing: null mRingHandler! 01-19 19:33:31.256: DEBUG/PhoneApp(638): updateWakeState: callscreen true, dialer false, speaker false... 01-19 19:33:31.287: DEBUG/PhoneApp(638): updateWakeState: keepScreenOn = false (isRinging false, showingDisc false) 

Estoy teniendo el mismo problema. Yo uso PhoneStateListener para las llamadas entrantes, funciona bien. Pero para las llamadas salientes sólo pude registrar un BroadcastReceiver con la intención android.intent.action.NEW_OUTGOING_CALL.

En mi conocimiento no hay manera de determinar el tiempo que el otro lado ha recogido, o no. Sin embargo, puede utilizar CallLog para recuperar la información de llamadas sin conexión. Los eventos de estado de llamada detallados sólo están disponibles a través de la clase interna com.android.internal.telephony.Phone a la que no tendrá acceso a menos que compile su propio Andoid.

FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.