¿Cómo puedo administrar los volúmenes de audio de manera sensata en mi aplicación de Android?

Tengo una aplicación que reproduce sonidos intermitentes mientras su actividad está abierta, y el usuario siempre espera que haga estos ruidos, pero desafortunadamente está limitada por el volumen de la transmisión de música. Las opciones que he descubierto son las siguientes:

Ajuste el volumen de la transmisión de música, posiblemente ensordeciendo al usuario si está reproduciendo música en ese momento.Call MediaPlayer.setVolume () que no es efectivo si el volumen de la transmisión de música es 0.Handle el botón de volumen me presiona, lo que presenta dos problemas: al presionar el botón de volumen, se ajusta el volumen del timbre a menos que mi audio se esté reproduciendo, y aún no he podido captar el evento onKey para presionar el botón de volumen usando mi OnKeyListener. Si hubiera alguna forma de forzar el ajuste para que se aplicara a la transmisión de música mientras mi actividad está enfocada, o simplemente apretar el botón, esto funcionaría. Reproduzca una pieza de audio de bucle silencioso en segundo plano para mantener la transmisión de música en contexto para los ajustes de volumen.

Creo que la tercera opción es probablemente la mejor, ya que cede el control del volumen al usuario, pero si hubiera alguna forma de anular el volumen del sistema en una sola instancia de mediaplayer, eso también funcionaría.