如何检测在Android中使用STREAM_VOICE_CALL或音频扬声器?

时间:2016-05-10 03:15:29

标签: android android-studio audio speaker

以phatsapp中的音频播放为例,如果你的耳朵靠近手机,扬声器会换到耳机扬声器,而耳朵离开手机时,就会使用音频扬声器。

我正在使用媒体播放器播放音频文件,并发现有

 setAudioStreamType(AudioManager.STREAM_VOICE_CALL); 

将扬声器切换到耳机。和

 setAudioStreamType(AudioManager.STREAM_MUSIC)

默认音频扬声器。

问题是,如何检测耳朵何时靠近手机,或者是否有必要通过我的程序实现(应该有一些默认的Android API?)

非常感谢您的帮助

1 个答案:

答案 0 :(得分:2)

大多数(或可能是全部?)Android设备都有接近传感器。我认为这是你需要的。
有关详细信息,请查看this question上的Sensor和Android文档。