[ACCEPTED]-notification if the Bluetooth is turned off in android app-bluetooth

Accepted answer
Score: 26

Register BroadcastReceiver with intent action BluetoothAdapter.ACTION_STATE_CHANGED and move your 2 notifiyng code into onReceive method. Don't forget 1 to check if new state is OFF

if(BluetoothAdapter.ACTION_STATE_CHANGED.equals(intent.getAction())) {
    if(intent.getIntExtra(BluetoothAdapter.EXTRA_STATE, -1) 
        == BluetoothAdapter.STATE_OFF)
        // Bluetooth was disconnected
}
Score: 19

If you want to detect when the user is DISCONNECTING 3 his Bluetooth, and later, detect when the 2 user has his Bluetooth DISCONNECTED, you 1 should do the following steps:

1) Get the user BluetoothAdapter:

BluetoothAdapter btAdapter = BluetoothAdapter.getDefaultAdapter();    

2) Create and configure your Receiver, with a code as this:

private final BroadcastReceiver mReceiver = new BroadcastReceiver() {

    @Override
    public void onReceive(Context context, Intent intent) {

        String action = intent.getAction();

        // It means the user has changed his bluetooth state.
        if (action.equals(BluetoothAdapter.ACTION_STATE_CHANGED)) {

            if (btAdapter.getState() == BluetoothAdapter.STATE_TURNING_OFF) {
                // The user bluetooth is turning off yet, but it is not disabled yet.
                return;
            }

            if (btAdapter.getState() == BluetoothAdapter.STATE_OFF) {
                // The user bluetooth is already disabled.
                return;
            }

        }
    }
};    

3) Register your BroadcastReceiver into your Activity:

this.registerReceiver(mReceiver, new IntentFilter(BluetoothAdapter.ACTION_STATE_CHANGED));    

More Related questions