Detectar presiona a los botones del auricular en Android?

¿Cómo puedo detectar si un botón, en un par de auriculares, se pulsó mientras se ejecuta una aplicación de Android? Las aplicaciones de música utilizan este botón para detener, reproducir, pausar música, etc.

¿Se envía una señal al micrófono? ¿Se trata de un evento de prensa clave?

Es la intención de ACTION_MEDIA_BUTTON .

Utilice ACTION_MEDIA_BUTTON y ACTION_AUDIO_BECOMING_NOISY . Consulte este documento: Desarrollador Android

Hay una manera más sencilla que no requiere que cualquier BroadcastReceiver se registre si sólo desea escuchar las devoluciones de llamada de los auriculares mientras su aplicación (actividad particular) se está ejecutando, simplemente anule el método Activity onKeyDown:

 @Override public boolean onKeyDown(int keyCode, KeyEvent event) { if(keyCode == KeyEvent.KEYCODE_HEADSETHOOK){ //handle click return true; } return super.onKeyDown(keyCode, event); } 
FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.