Проверить registerMediaButtonEventReceiver(ComponentName broadcastReceiver);
Определить BroadcastReceiver
, который обрабатывает ACTION_MEDIA_BUTTON
.Полученное значение intent
включает одно дополнительное поле EXTRA_KEY_EVENT
, содержащее ключевое событие, вызвавшее трансляцию.Вы можете использовать это событие, чтобы узнать, какая клавиша была нажата.
РЕДАКТИРОВАТЬ:
Это просто пример кода.там могут быть синтаксические ошибки.
// in onCreate of activity
registerMediaButtonEventReceiver(mediaReceiver );
// later somewhere in activity.
MediaButton_Receiver mediaReceiver = new MediaButton_Receiver();
class MediaButton_Receiver implements BroadcastReceiver {
void onReceive(Intent intent) {
KeyEvent ke = (KeyEvent)intent.getExtra(Intent.EXTRA_KEY_EVENT);
if (ke .getKeyCode() == KeyEvent.KEYCODE_VOLUME_DOWN) {
}
// Similarly other key codes .......
}
}
Отменить регистрацию получателя в onPause()
или onStop()