Skip to content Skip to sidebar Skip to footer

Disable Bluetooth Discoverable Mode On Android

I found in the Android documentation how to turn Bluetooth discoverability mode on: Intent discoverableIntent = new Intent(BluetoothAdapter.ACTION_REQUEST_DISCOVERABLE); discoverab

Solution 1:

Just send a new discoverable request with duration 1 (or 0 might even work):

IntentdiscoverableIntent=newIntent(BluetoothAdapter.ACTION_REQUEST_DISCOVERABLE);
discoverableIntent.putExtra(BluetoothAdapter.EXTRA_DISCOVERABLE_DURATION, 1);
startActivity(discoverableIntent);

Solution 2:

cancelDiscovery() is not for this. This method can be used to stop the scanning of your device for other bluetooth devices. It is different from this to make device not visible.

Solution 3:

Care when using this method, it might be easily changed as it is hidden.

BluetoothAdapter bluetoothAdapter = BluetoothAdapter.getDefaultAdapter();  
try {
    Method method = BluetoothAdapter.class.getMethod("setScanMode", int.class);
    method.invoke(bluetoothAdapter, BluetoothAdapter.SCAN_MODE_CONNECTABLE);
} catch (NoSuchMethodException | IllegalArgumentException | IllegalAccessException | InvocationTargetException e) {
    Log.e(TAG, "Failed to turn off bluetooth device discoverability.", e);
}

Also usable with SCAN_MODE_NONE and SCAN_MODE_CONNECTABLE_DISCOVERABLE (uses default duration)

Source

Post a Comment for "Disable Bluetooth Discoverable Mode On Android"