【发布时间】:2015-07-10 05:34:21
【问题描述】:
我想在我的 Android 应用中更改声音设备输出。我想在耳机插入时使用手机的扬声器。
我尝试将 AudioManager classaudioManager.setSpeakerphoneOn(true); 中的 setSpeakerphoneOn 与 audioManager.setMode(AudioManager.MODE_IN_CALL); 一起使用,但我不想设置 MODE_IN_CALL !我想留在 MODE_NORMAL。
我搜索了 AudioSystem 类,发现了一个应用程序“SoundAbout”,它可以做到这一点。您可以为媒体音频选择扬声器,并且模式保持在 NORMAL。
所以我尝试在 AudioSystem 中使用 setDeviceConnectionState 将 DEVICE_OUT_WIRED_HEADPHONE 设置为 0,但它不起作用。当我检查 DEVICE_OUT_WIRED_HEADPHONE 的状态时,它总是设置为 1 (AVAILABLE),我无法通过扬声器播放声音。
如何在不处于 MODE_IN_CALL 的情况下将 DEVICE_OUT_WIRED_HEADPHONE 设置为 0 或通过扬声器播放声音?
感谢和抱歉我的英语不好!
【问题讨论】:
标签: android output android-audiomanager speaker