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

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

Solutions Collecting From Web of "Android:如何以编程方式设置MediaPlayer卷?"

使用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);