Android:检查耳机是否已插入

时间:2010-05-04 11:14:39

标签: android

如何检查耳机当前是否已插入。我不希望广播接收器在连接到设备时通知我。我需要这样的东西:

if(/*headphone is connected*/)
 ...

3 个答案:

答案 0 :(得分:14)

您似乎对isWiredHeadsetOn() methodisBluetoothA2dpOn() methodAudioManager class感兴趣。

但是,isWiredHeadsetOn()方法仅适用于Android 2.0或更高版本。 (自Android 1.5起,isBluetoothA2dpOn()方法已经可用。)

答案 1 :(得分:2)

使用此代码段

AudioManager am1 = (AudioManager)getSystemService(Context.AUDIO_SERVICE);
Log.i("am1.isWiredHeadsetOn()", am1.isWiredHeadsetOn()+"");
Log.i("am1.isMusicActive()", am1.isMusicActive()+"");
Log.i("am1.isSpeakerphoneOn()", am1.isSpeakerphoneOn()+"");

答案 2 :(得分:0)

这似乎至少在1.6上完成了这项工作;不确定它是否支持更高版本(a是AudioManager的实例)

boolean headphones = (a.getRouting(a.getMode()) & AudioManager.ROUTE_HEADSET) == AudioManager.ROUTE_HEADSET;