How can I detect if a buton, on a pair of headphones, was pressed while running an Android app? Music applications use to this button to stop, play, pause music, etc.
Does a signal get sent to the microphone? Is it treated as a key press event?
There's a simpler way which doesn't require any BroadcastReceiver to be registered if you only want to listen for headset button callbacks while your app (particular activity) is running, simply override Activity onKeyDown method:
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
if(keyCode == KeyEvent.KEYCODE_HEADSETHOOK){
//handle click
return true;
}
return super.onKeyDown(keyCode, event);
}
It's the ACTION_MEDIA_BUTTON intent.
Use the ACTION_MEDIA_BUTTON
and ACTION_AUDIO_BECOMING_NOISY
. Refer this doc: Developer Android
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With