android - 在免提通话期间通过电话扬声器播放声音

标签 android android-mediaplayer android-audiomanager

如何在通话期间(免提)在电话扬声器中播放声音?

我试试这个:

audio.setMode(AudioManager.MODE_IN_CALL);
audio.setSpeakerphoneOn(true);

audio.setStreamVolume(AudioManager.MODE_IN_CALL, 20, 0);
mediaplayer.setStreamType(AudioManager.STREAM_VOICE_CALL);

但是以这种方式 - 开始从手机扬声器播放响亮的声音,但通话在免提模式下终止,通话也在手机扬声器中播放。

如何在不影响免提通话的情况下播放声音?谢谢。

最佳答案

使用another stream不中断通话音频:

mediaplayer.setStreamType(AudioManager.STREAM_MUSIC);

如果您只是想通过调用本身发送简单的音调,那么也许:

mediaplayer.setStreamType(AudioManager.STREAM_DTMF);

关于android - 在免提通话期间通过电话扬声器播放声音,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42488728/

相关文章:

java - 使用 Cordova 3.1 CLI 构建 Android 应用程序时出错

java - 如何在android studio中的java类中的包文件中打开sqlite db

java - 在没有 MediaPlayer 的情况下在 android 上播放实时媒体流

android - MediaPlayer 状态 4 错误

Android MediaPlayer getCurrentPosition 返回 0

android - 如何在android中以编程方式增加铃声和通知音量

android - Refactor > Move 重叠另一个项目的位置

java - 在 aar 库文件内的布局中获取 inflateException

android - 加载音频文件时显示进度条

android - AudioManager - 两种方法之间的区别