Notifications 设置音频属性音量
经过很长一段时间的探索,Android终于推出了AudioAttributes API,它可以通过耳机(插入耳机时)在与Notifications 设置音频属性音量,notifications,android-5.0-lollipop,volume,android-audiomanager,Notifications,Android 5.0 Lollipop,Volume,Android Audiomanager,经过很长一段时间的探索,Android终于推出了AudioAttributes API,它可以通过耳机(插入耳机时)在与stream_MUSIC不同的流中播放通知噪音,并且可以在任何背景音乐中中断并完全听得见。通过使用以下代码,我能够准确地实现我想要的通知,至少在API 21或更高版本中(STREAM_MUSIC是我发现的适用于较低版本的最佳选择): 不幸的是,在我的应用程序设置中,似乎没有任何方法可以调整声音的音量。我目前以以下方式使用AudioManager,但它只允许对流进行音量调整,并且
stream_MUSIC
不同的流中播放通知噪音,并且可以在任何背景音乐中中断并完全听得见。通过使用以下代码,我能够准确地实现我想要的通知,至少在API 21或更高版本中(STREAM_MUSIC
是我发现的适用于较低版本的最佳选择):
不幸的是,在我的应用程序设置中,似乎没有任何方法可以调整声音的音量。我目前以以下方式使用AudioManager
,但它只允许对流进行音量调整,并且STREAM\u ALARM
、STREAM\u NOTIFICATION
、STREAM\u RING
或STREAM\u MUSIC
均不适用于任何用于声音化的路由策略:
audioManager.setStreamVolume(AudioManager.STREAM_NOTIFICATION, originalVolume, 0);
有人对如何设置与
AudioAttributes
输出相对应的音量有什么建议吗?请记住,音频实际上是在用于实际通知的BroadcastReceiver
中播放的,并且音频设置将仅在一些设置活动中指定
似乎STREAM\u系统
相当于我试图用AudioAttributes
做的事情。基本上,使用我上面的代码就足以支持API 21及其后续版本,而使用STREAM_系统
可以为AudioManager
和API 21之前的版本提供一切必要的功能
audioManager.setStreamVolume(AudioManager.STREAM_NOTIFICATION, originalVolume, 0);