这篇文章写的是获取耳机连接状态的几种方式,不包括蓝牙耳机的连接,当然,声音从哪个设备中发出来也不管。
耳机插入和拔出时会发出广播ACTION_HEADSET_PLUG,所以只要注册一个广播接受者就可以监听耳机的状态了
private final BroadcastReceiver mReceiver = new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent) {
String action = intent.getAction();
if (action.equals(Intent.ACTION_HEADSET_PLUG)) {
if(intent.hasExtra("state")) {
if(intent.getIntExtra("state", 0) == 0) {
Toast.makeText(context, "headset not connected", Toast.LENGTH_LONG).show();
} else if(intent.getIntExtra("state", 0) == 1) {
Toast.makeText(context, "headset connected", Toast.LENGTH_LONG).show();
}
}
}
}
};
但这样子写其实有的时候还是不