我的 getVolume() 方法总是返回 1.0。我已将手机静音,更改了音量,但是当我调用我的方法时,我随时都会收到 1f。我错过了什么吗?
btnPlay.setOnClickListener(new OnClickListener(){
@Override
public void onClick(View v){
float volume = getVolume();
Log.i("inf", "Volume: " + volume);
soundPlayID = soundPool.play(my_sound, volume, volume, 1, 0, 1f);
}
});
private float getVolume(){
AudioManager audioManager = (AudioManager) getSystemService(AUDIO_SERVICE);
float actualVolume = (float) audioManager.getStreamVolume(AudioManager.STREAM_MUSIC);
float maxVolume = (float) audioManager.getStreamVolume(AudioManager.STREAM_MUSIC);
float volume = actualVolume / maxVolume;
return volume;
}
安慰:
音量:1.0
音量:1.0
音量:1.0
音量:1.0