更改Android中音量按钮控制的默认音频流

时间:2013-09-02 07:30:20

标签: java android audio android-audiomanager

我对问题标题感到抱歉,但我不确定这个特殊的android功能是什么 当我按下音量按钮时,这是我的应用程序的屏幕截图 enter image description here
我们可以看到电话符号位于顶部,这意味着它的音量由音量按钮控制 但是我在平板电脑(而不是手机)上进行测试,因此更改此音量对扬声器输出没有影响 我想要做的是将音量按钮映射到此处显示的第二个扬声器图标,这将更改扬声器输出音量
如何设置数位板的音量按钮以映射到此输出流(或者调用此功能的任何内容)? 我试过了 am.setMode(AudioManager.MODE_NORMAL);

am.setMode(AudioManager.MODE_IN_COMMUNICATION);
其中am是Audiomanager,但两者似乎都有相同的输出

1 个答案:

答案 0 :(得分:1)

Activity类有一个setVolumeControlStream方法:

  

建议应通过硬件音量控件更改音量的音频流。

使用您希望硬件按钮在您的应用位于前台时修改音量的流类型(例如STREAM_MUSIC)调用它,然后在您要重置时使用USE_DEFAULT_STREAM_TYPE调用它行为为默认值。

顺便说一下,扬声器图标并不代表扬声器的音量。至少在我最后一次检查时,它代表媒体卷(即,遵循媒体路由策略的所有流,例如STREAM_MUSIC)。