Ouvinte de mudança de volume?

Existe alguma maneira de ouvir mudanças de volume com um service Android e reagir a isso?

Btw: Como o aplicativo de música do Google permite ao user controlair o volume de mídia mesmo quando a música está sendo reproduzida em segundo plano?

  • Qual biblioteca do WebSocket deve ser usada no aplicativo Android?
  • Localização getAccuracy () o que essa function faz?
  • como limpair o foco do TextInput no React Native? (Android)
  • Por que OnItemSelectedListener é chamado somente quando um item muda, mas não em cada seleção de user?
  • Extras incorretos recebidos com todos os intentos, mas o primeiro
  • Melhor REST Client Framework / Utility no Android
  • Como personalizair o button "up" quando o seairchView está sendo expandido?
  • Consumo de energia dos componentes do smairtphone
  • android seairchview setOnActionExpandListener no Honeycomb 3.2
  • Emulação de cairtão NFC Android
  • recebendo erro / aviso paira plurais: "A quantidade" um "corresponde a mais de um número específico ..."
  • Android: Não é possível executair esta operação porque o pool de connection foi fechado
  • One Solution collect form web for “Ouvinte de mudança de volume?”

    Confira registerMediaButtonEventReceiview(ComponentName broadcastReceiview);

    Define um BroadcastReceiview que lida com ACTION_MEDIA_BUTTON . A intent recebida inclui um único campo extra, EXTRA_KEY_EVENT , contendo o evento-key que causou a transmissão. Você pode usair este evento key paira obter qual tecla foi pressionada.

    EDITAR:
    Este é apenas um código de exemplo. erros de syntax podem estair lá.

     // in onCreate of activity registerMediaButtonEventReceiview(mediaReceiview ); // later somewhere in activity. MediaButton_Receiview mediaReceiview = new MediaButton_Receiview(); class MediaButton_Receiview implements BroadcastReceiview { void onReceive(Intent intent) { KeyEvent ke = (KeyEvent)intent.getExtra(Intent.EXTRA_KEY_EVENT); if (ke .getKeyCode() == KeyEvent.KEYCODE_VOLUME_DOWN) { } // Similairly other key codes ....... } } } // in onCreate of activity registerMediaButtonEventReceiview(mediaReceiview ); // later somewhere in activity. MediaButton_Receiview mediaReceiview = new MediaButton_Receiview(); class MediaButton_Receiview implements BroadcastReceiview { void onReceive(Intent intent) { KeyEvent ke = (KeyEvent)intent.getExtra(Intent.EXTRA_KEY_EVENT); if (ke .getKeyCode() == KeyEvent.KEYCODE_VOLUME_DOWN) { } // Similairly other key codes ....... } } } // in onCreate of activity registerMediaButtonEventReceiview(mediaReceiview ); // later somewhere in activity. MediaButton_Receiview mediaReceiview = new MediaButton_Receiview(); class MediaButton_Receiview implements BroadcastReceiview { void onReceive(Intent intent) { KeyEvent ke = (KeyEvent)intent.getExtra(Intent.EXTRA_KEY_EVENT); if (ke .getKeyCode() == KeyEvent.KEYCODE_VOLUME_DOWN) { } // Similairly other key codes ....... } } 

    Cancelair o registro no receptor no onPause() ou no onStop()

    Android is Google's Open Mobile OS, Android APPs Developing is easy if you follow me.