gpt4 book ai didi

notifications - 设置音频属性音量

转载 作者:行者123 更新时间:2023-12-01 17:38:29 24 4
gpt4 key购买 nike

在寻找非常很长时间后,通过耳机(插入时)在与 STREAM_MUSIC 分开的流上播放通知噪音,以一种可以中断并在任何背景音乐中都可以完全听到的方式,Android 最终推出了 AudioAttributes API。通过使用以下代码,我能够准确地实现我想要的通知,至少在 API 21 或更高版本中(STREAM_MUSIC 是我发现的较低版本的最佳选项):

AudioAttributes audioAttributes = new AudioAttributes.Builder()
.setUsage(AudioAttributes.USAGE_ASSISTANCE_SONIFICATION)
.setContentType(AudioAttributes.CONTENT_TYPE_SONIFICATION)
.build();

不幸的是,似乎没有任何方法可以在我的应用程序设置中调整发声音量。我目前按以下方式使用 AudioManager,但它只允许对流进行音量调整,而不允许 STREAM_ALARMSTREAM_NOTIFICATION STREAM_RINGSTREAM_MUSIC 适用于用于可听化的任何路由策略:

audioManager.setStreamVolume(AudioManager.STREAM_NOTIFICATION, originalVolume, 0);

有人对如何设置 AudioAttributes 输出对应的音量有任何建议吗?请记住,音频实际上是在用于实际通知的 BroadcastReceiver 中播放的,并且音频设置仅在某些设置 Activity 中指定。

最佳答案

嗯,看来我错过了 API 文档中的一个关键表: https://source.android.com/devices/audio/attributes.html

看起来STREAM_SYSTEM与我尝试用AudioAttributes做的事情是等价的。基本上,使用上面的代码对于 API 21 及更高版本来说已经足够了,并且使用 STREAM_SYSTEM 可以完成 AudioManager 和 21 之前的 API 所需的一切。

关于notifications - 设置音频属性音量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31144390/

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