我需要通过听筒播放一些音频。我正在使用 AudioTrack 在设备上播放一些声音。并且音频模式设置为 STREAM_VOICE_CALL。此外,在我的活动中,扬声器通过以下方式关闭:
AudioManager am;
am = (AudioManager) getSystemService(Context.AUDIO_SERVICE);
am.setSpeakerphoneOn(false);
这似乎在 2.3 设备上完美运行。但是在 2.1 上,声音仍然从扬声器播放。
作为对此的修复,我尝试使用 setMode() 作为:
am.setMode(AudioManager.MODE_IN_CALL);
有了这个,声音通过听筒播放 2.1 和 2.3,但大多数时候 2.3 根本不播放。另外,我在某些地方读到 setMode() 不应该被应用程序使用,因为它会影响系统范围的电话状态。这里:http ://code.google.com/p/sipdroid/issues/detail?id=270
有什么帮助吗?