Android:检测当前音频通道

时间:2016-04-20 20:51:16

标签: android audio bluetooth android-audiomanager audio-route

我想要检测我的Android手机当前输出音频的方式。

我一直在测试:

android.bluetooth.headset.profile.action.AUDIO_STATE_CHANGED

当当前的音频设备是蓝牙耳机时,它提供的信息,当它不是,这是解决方案的一部分。

然而,当音频被路由到扬声器而不是接收器和有线耳机时,我似乎无法捕获。

理想情况下,我会收听一个广播,只要音频路线发生变化就会触发,例如在通话过程中切换时。

1 个答案:

答案 0 :(得分:0)

当声音从耳机切换到扬声器时会发出AUDIO_BECOMING_NOISY意图(参见http://developer.android.com/guide/topics/media/mediaplayer.html#noisyintent)。

还有一种检测相反开关的方法,请参阅How to detect when a user plugs headset on android device? (Opposite of ACTION_AUDIO_BECOMING_NOISY)