我们可以将Android应用的音量设置为相对于设备音量,而不会影响设备音量吗?

时间:2016-01-02 17:46:01

标签: android audio volume seekbar android-audiomanager

我的Android应用播放音频,即使设备或其他应用正在播放其他音乐。

我想从SeekBar&在后台设置我的应用程序的音量,作为当前设备音乐音量的百分比。我想在任何时候将我的Android应用程序的音量设置为设备音量的“n%”,'n'是应用程序中SeekBar的值。

我试过这样做:

volumeSeekbar.setMax(100); @Override public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) { progress = (progress * (myAudioManager.getStreamVolume(AudioManager.STREAM_MUSIC)))/100; myAudioManager.setStreamVolume(AudioManager.STREAM_MUSIC, progress, 0); }

但是上面的代码会改变整体设备的音量。就我而言,我希望设备音乐不会中断。保持其数量。

假设设备音乐是在80级播放,用户将应用程序的Seekbar设置为50,那么app音频应该以50%(80)= 40的音量播放。在这种情况下,两个音频都将播放,设备数量保持在80&应用量为80%的50%。如果设备音量或SeekBar值随时变化,应用量也应该更改。

如何实现这一目标?

1 个答案:

答案 0 :(得分:2)

唯一的音量设置是设备系统设置中的音量设置。当前的Android操作系统不支持特定于应用程序的音量设置,并且您无法独立于设备音量控制应用程序中的音量。