Android check Headphones plugged in
- Check Headphones is plugged in?
BroadcastReceiver broadcastReceiver;
boolean Microphone_Plugged_in = false;
private void checkHeadphones(){
boolean check = isHeadphonesPlugged(this);
if(!check){
Toast.makeText(this, "Please plug in your headset", Toast.LENGTH_SHORT).show();
return;
}
broadcastReceiver = new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent) {
final String action = intent.getAction();
int iii;
if (Intent.ACTION_HEADSET_PLUG.equals(action)) {
iii = intent.getIntExtra("state", -1);
if (iii == 0) {
Microphone_Plugged_in = false;
iv_alert.setVisibility(View.VISIBLE);
Toast.makeText(getApplicationContext(), "microphone not plugged in", Toast.LENGTH_LONG).show();
}
if (iii == 1) {
Microphone_Plugged_in = true;
Toast.makeText(getApplicationContext(), "microphone plugged in",
Toast.LENGTH_LONG).show();
playTone.play(false, 1000, 0.02, 2000);
repeatPlay();
}
}
}
};
IntentFilter receiverFilter = new IntentFilter(Intent.ACTION_HEADSET_PLUG);
registerReceiver(broadcastReceiver, receiverFilter);
}
private boolean isHeadphonesPlugged(Activity activity){
AudioManager audioManager = (AudioManager)activity.getSystemService(Context.AUDIO_SERVICE);
AudioDeviceInfo[] audioDevices = audioManager.getDevices(AudioManager.GET_DEVICES_ALL);
for(AudioDeviceInfo deviceInfo : audioDevices){
if(deviceInfo.getType()==AudioDeviceInfo.TYPE_WIRED_HEADPHONES
|| deviceInfo.getType()==AudioDeviceInfo.TYPE_WIRED_HEADSET){
return true;
}
}
return false;
}
2. OnPause clear the receiver
@Override
protected void onPause() {
super.onPause();
unregisterReceiver(broadcastReceiver);
}
THE END