Начать обнаружение после регистрации вашего приемника.
IntentFilter intent = new IntentFilter(BluetoothDevice.ACTION_BOND_STATE_CHANGED);
registerReceiver(mBroadcastReceiver, intent);
IntentFilter filter = new IntentFilter(BluetoothDevice.ACTION_FOUND);
registerReceiver(mBroadcastReceiver, filter);
filter = new IntentFilter(BluetoothAdapter.ACTION_DISCOVERY_FINISHED);
registerReceiver(mBroadcastReceiver, filter);
mBtAdapter.startDiscovery();
Или в вашем случае
IntentFilter filtera = new IntentFilter();
filter.addAction(BluetoothDevice.ACTION_FOUND);
filter.addAction(BluetoothAdapter.ACTION_DISCOVERY_STARTED);
filter.addAction(BluetoothAdapter.ACTION_DISCOVERY_FINISHED);
registerReceiver(mBroadcastReceiver, filter);
mBtAdapter.startDiscovery();
Также убедитесь, что у вас есть разрешения на bt в вашем манифесте
<uses-permission android:name="android.permission.BLUETOOTH_ADMIN" />
<uses-permission android:name="android.permission.BLUETOOTH" />
На некоторых телефонах вам потребуется сначала перезапустить адаптер.
mBluetoothAdapter.disable();
mBluetoothAdapter.enable();
в течение некоторого времени на широковещательном приемнике, если вы не получаете BluetoothAdapter.ACTION_DISCOVERY_STARTED после запуска обнаружения, вы должны запросить перезапуск устройства в качестве bt может не работать должным образом. вы можете использовать таймер, чтобы проверить это.