Android:如何以编程方式设置MediaPlayer卷?

如何以编程方式设置mediaplayer卷。 我用它来报警通知。 任何帮助高度赞赏,并提前感谢。

  • java.lang.IllegalStateException是什么意思?
  • Android SeekBar来控制MediaPlayer的进度
  • Android MediaPlayer getCurrentPosition()导致audio口吃
  • AudioTrack,SoundPool或MediaPlayer我应该使用哪一种?
  • 如何从MediaPlayer获取当前播放的歌曲详情
  • 如何更改android的mediaplayer中的默认用户代理
  • Android媒体播放器如何在应用程序closures时继续播放歌曲?
  • Android ExoPlayer:它是否解决Android媒体播放器的无缝/无缝播放问题
  • 使用AudioManager可以控制媒体播放器的音量。

    AudioManager audioManager = (AudioManager)getSystemService(Context.AUDIO_SERVICE); audioManager.setStreamVolume(AudioManager.STREAM_MUSIC, 20, 0); 

    也从MediaPlayer(但我没有尝试)

     public void setVolume (float leftVolume, float rightVolume) 

    因为:API级别1

    设定此播放器的音量。 build议使用此API来平衡应用程序中audiostream的输出。 除非您正在编写控制用户设置的应用程序,否则应该优先使用此API来设置特定types的所有stream的音量setStreamVolume(int,int,int)。 请注意,传递的音量值是原始标量。 UI控件应该以对数forms进行缩放。

    参数

    leftVolume左卷标量

    rightVolume右卷标量

    希望这个帮助

      audio = (AudioManager) getSystemService(Context.AUDIO_SERVICE); 

    对于音量提高

      audio.adjustStreamVolume(AudioManager.STREAM_MUSIC, AudioManager.ADJUST_RAISE, AudioManager.FLAG_SHOW_UI); 

    降低音量

     audio.adjustStreamVolume(AudioManager.STREAM_MUSIC, AudioManager.ADJUST_LOWER, AudioManager.FLAG_SHOW_UI); 

    您在MediaPlayer类中具有setVolume方法。 看到这里

    隐藏音量控制UI:

     audio = (AudioManager) getSystemService(Context.AUDIO_SERVICE); 

    对于音量提高

     audio.adjustStreamVolume(AudioManager.STREAM_MUSIC, AudioManager.ADJUST_RAISE, 0); 

    降低音量

     audio.adjustStreamVolume(AudioManager.STREAM_MUSIC, AudioManager.ADJUST_LOWER, 0); 

    在这里阅读这个页面 。 这很好解释。 基本上,除非您的应用程序是更换闹钟,否则您需要在“onCreate()”函数中进行以下调用:

     setVolumeControlStream(AudioManager.STREAM_MUSIC); 

    通过这种方式,您可以使用硬件button创build应用程序的音量。

    请记住设置左右扬声器音量。

     if (System.nanoTime() == alarm){ yourMediaPlayer.setVolume(volume, volume)} } 

    尝试这个

     protected static void setVolume(int volume) { currentVolume = volume; { if (volume == 1) { volume = 2; } try { float vol = ((float) volume / CONSTANT.SYSTEM_MAX_VOLUME); mediaPlayer.setVolume(vol, vol); } catch (Exception e) { e.printStackTrace(); } } } 

    以下代码将音量设置为最大级别(getStreamMaxVolume())。

     AudioManager am = (AudioManager) getSystemService(Context.AUDIO_SERVICE); am.setStreamVolume(AudioManager.STREAM_MUSIC,am.getStreamMaxVolume(AudioManager.STREAM_MUSIC),0);