如何检测使用 STREAM_VOICE_CALL 或 android 中的音频扬声器?
How to detect use the STREAM_VOICE_CALL or the audio speaker in android?
以whatsapp中的音频播放为例,如果你的耳朵靠近phone,扬声器将变为耳朵phone扬声器,而耳朵离开phone,它使用音频扬声器。
我正在用mediaplayer播放音频文件,发现有
setAudioStreamType(AudioManager.STREAM_VOICE_CALL);
将扬声器切换为耳机扬声器。和
setAudioStreamType(AudioManager.STREAM_MUSIC)
默认音频扬声器。
问题是,如何检测耳朵何时靠近phone,或者是否有必要通过我的程序实现(应该有一些默认的android API ?)
非常感谢您的帮助
大多数(或可能是全部?)android 设备具有接近传感器。我想这就是你需要的。
检查 this question and Android documentation on Sensor 了解更多详情。
以whatsapp中的音频播放为例,如果你的耳朵靠近phone,扬声器将变为耳朵phone扬声器,而耳朵离开phone,它使用音频扬声器。
我正在用mediaplayer播放音频文件,发现有
setAudioStreamType(AudioManager.STREAM_VOICE_CALL);
将扬声器切换为耳机扬声器。和
setAudioStreamType(AudioManager.STREAM_MUSIC)
默认音频扬声器。
问题是,如何检测耳朵何时靠近phone,或者是否有必要通过我的程序实现(应该有一些默认的android API ?)
非常感谢您的帮助
大多数(或可能是全部?)android 设备具有接近传感器。我想这就是你需要的。
检查 this question and Android documentation on Sensor 了解更多详情。