首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >设置AudioAttributes卷

设置AudioAttributes卷
EN

Stack Overflow用户
提问于 2015-06-30 17:14:28
回答 1查看 5.4K关注 0票数 4

经过很长一段时间寻找一种只通过耳机播放通知噪音的方法(当插入耳机时),在一个与STREAM_MUSIC分离的流中,以一种可以中断任何背景音乐并能被完全听到的方式,安卓终于推出了AudioAttributes API。通过使用以下代码,至少在API 21或更高版本中,我能够实现我想要的通知功能(STREAM_MUSIC是我在低版本中找到的最佳选择):

代码语言:javascript
运行
复制
AudioAttributes audioAttributes = new AudioAttributes.Builder()
    .setUsage(AudioAttributes.USAGE_ASSISTANCE_SONIFICATION)
    .setContentType(AudioAttributes.CONTENT_TYPE_SONIFICATION)
    .build();

不幸的是,在我的应用程序的设置中,似乎没有任何方法来调整声纳的音量。我目前使用AudioManager的方式如下,但它只允许对流进行卷调整,STREAM_ALARMSTREAM_NOTIFICATIONSTREAM_RINGSTREAM_MUSIC都不适用于用于声纳化的任何路由策略:

代码语言:javascript
运行
复制
audioManager.setStreamVolume(AudioManager.STREAM_NOTIFICATION, originalVolume, 0);

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

EN

回答 1

Stack Overflow用户

发布于 2015-06-30 21:15:53

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

STREAM_SYSTEM似乎相当于我试图使用AudioAttributes所做的事情。基本上,使用我前面的代码对于API 21和转发来说就足够了,使用STREAM_SYSTEM可以在21之前完成AudioManager和API所必需的一切。

票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/31144390

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档