在我的应用程序中,当我开始我的音频通话/音频广播时,我已请求音频管理器进行音频聚焦.
audioManager.requestAudioFocus(null,audioManager.STREAM_VOICE_CALL, AudioManager.AUDIOFOCUS_GAIN_TRANSIENT| AudioManager.AUDIOFOCUS_GAIN_TRANSIENT_MAY_DUCK);
Run Code Online (Sandbox Code Playgroud)
如果用户按下Home并导航到另一个媒体应用程序,然后如果他们播放任何媒体,则该文件也以低音量播放.接听电话的人也可以听到该媒体声音文件.
当我的音频呼叫正在进行时,如果用户尝试播放任何音频资源,我如何告诉音频管理员仅将偏好设置给我的应用程序?
您所描述的是Android上的默认行为(我相信).话虽这么说,你应该能够做你所希望的.Android SDK允许您将单个流类型设置为solo - 导致所有其他流被静音.为此,您应该使用以下AudioManager
setStreamSolo()
呼叫:
audioManager.setStreamSolo(AudioManager.STREAM_VOICE_CALL, true);
您需要在播放开始时执行此操作,然后在播放结束或您的活动完成时将流独奏设置为false.如果有这个诀窍,请告诉我.
几个可能有用的资源:
归档时间: |
|
查看次数: |
4995 次 |
最近记录: |