añadí este es mi manifiesto de archivo -No es capaz de obtener el TelephonyManager.CALL_STATE_RINGING
<receiver android:name=".ServiceReceiver">
<intent-filter>
<action android:name="android.intent.action.PHONE_STATE" />
</intent-filter>
</receiver>
</application>
<uses-permission android:name="android.permission.READ_PHONE_STATE">
</uses-permission>
Entonces mi clase de servicio es como esto -
public class ServiceReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
MyPhoneStateListener phoneListener = new MyPhoneStateListener();
TelephonyManager telephony = (TelephonyManager) context
.getSystemService(Context.TELEPHONY_SERVICE);
telephony.listen(phoneListener, PhoneStateListener.LISTEN_CALL_STATE);
}
}
y mi PhoneStateListener es -
public class MyPhoneStateListener extends PhoneStateListener {
public void onCallStateChanged(int state, String incomingNumber) {
Log.i("telephony-example", "State changed: " + stateName(state));
}
String stateName(int state) {
switch (state) {
case TelephonyManager.CALL_STATE_IDLE:
Log.d("DEBUG", "***********IDLE********");
return "Idle";
case TelephonyManager.CALL_STATE_OFFHOOK:
Log.d("DEBUG", "***********OFFHOOK********");
return "Off hook";
case TelephonyManager.CALL_STATE_RINGING:
Log.d("DEBUG", "***********RINGING********");
return "Ringing";
}
return Integer.toString(state);
}
}
Puedo ver el estado INACTIVO.
Pero cuando llamo no consigo el estado de llamada. ¿Por qué?
Gracias ... tiene el zumbido :) Por cierto sabes cómo hacer que hacer una pausa en mi aplicación cuando suena el teléfono y luego volver a la aplicación cuando la llamada telefónica ¿se acabó? – nasaa
AFAIK, si su aplicación ejecuta una actividad, se llamará a onPause y onStop para que la actividad del teléfono se muestre por adelantado. Si está ejecutando un servicio, no veo una razón por la cual quiera pausar el trabajo que está haciendo. Aún así, si desea utilizar el método anterior para saber cuándo suena el teléfono y luego, según la lógica de su aplicación, deje de hacer el trabajo y reanude más tarde, pero no veo por qué lo haría desde un servicio. – advantej
Bueno, el problema es que tengo una canción en reproducción, pero no se detiene cuando suena el teléfono, así que pregunté. – nasaa