Intereting Posts
Сохранение MapFragment (Maps v2) Состояние в Android Реализация функций USSD. Связывание службы с PhoneUtils без перезапуска телефона при каждом обновлении Экран принудительного включения Как поток, созданный приложением, можно рассматривать как другое приложение из ContentProvider приложения? Изменение уровня API Android Studio Как я могу использовать внешние JAR в проекте Android? Как поместить один вид над другим в относительном макете программно в андроид? Ошибка при выпуске APK с AsyncTask и Jsoup Обновление Android Studio 2.1 Preview3: невозможно настроить расширение публикации после того, как он был достигнут Android – я хочу показать пользователю процесс загрузки файлов Android-программирование – отправка почты Android – настраиваемый новый экран входящих вызовов Сертификату доверяют ПК, но не на Android Libgdx не корректно отображает шрифты после возобновления Как я могу конкатенировать статические строки с XML-строковыми ресурсами?

Смена громкости?

Есть ли способ прослушать изменения громкости с помощью службы Android и реагировать на это?

Кстати: как музыкальное приложение Google позволяет пользователю контролировать объем мультимедиа, даже когда музыка играет в фоновом режиме?

Solutions Collecting From Web of "Смена громкости?"

Проверьте 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() получателя в onPause() или onStop()