选择音量通道以在按下音量键时更改

jon*_*oni 2 java android

在Android中,通常有3个音频音量频道对用户感兴趣:音乐/媒体,铃声和警报.通常,按下硬件音量按钮时,将设置铃声音量,并相应显示带有搜索条的对话框.

但是,如果我打开音乐应用程序并按音量按钮,则会设置媒体音量通道(并且会在搜索栏对话框而不是电话上显示扬声器图标).我现在的问题是,如何为我的应用程序设置使用媒体通道音量控制而不是铃声频道?是否有这样的开关或我是否必须手动执行此操作(捕捉音量按钮笔划)?

jon*_*oni 8

经过一些谷歌搜索,我发现了自己.

您可以在活动的onCreate方法中调用setVolumeControlStream.以下示例.

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

    ...

    // change the music vol instead of ringtone vol
    // when hardware volume buttons are pressed
    setVolumeControlStream(AudioManager.STREAM_MUSIC);
}
Run Code Online (Sandbox Code Playgroud)