gpt4 book ai didi

android - AudioManager getVolume 自定义方法

转载 作者:行者123 更新时间:2023-12-03 00:18:27 25 4
gpt4 key购买 nike

我的 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;
}

安慰:

Volume: 1.0

Volume: 1.0

Volume: 1.0

Volume: 1.0

最佳答案

这里的 maxVolume 似乎与音量相同。这些调用是相同的,因此您将始终得到 1.0。

您需要调用:

audioManager.getStreamMaxVolume(AudioManager.STREAM_MUSIC);

然后你应该会看到更有趣的结果。

关于android - AudioManager getVolume 自定义方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18085603/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com