Android:检查是否插入了耳机

问题描述:

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

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

看起来你会感兴趣的isWiredHeadsetOn() methodAudioManager classisBluetoothA2dpOn() method

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

这似乎至少在1.6上完成了这项工作;不能确定它是否在以后的版本中支持的功能(一个是AudioManager的实例)

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

@movillnescom这句话,你检查如果耳机插入或拔出? – 2016-07-07 08:49:18

使用此代码段

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()+"");