Боюсь, я не совсем уверен, в чем ваша проблема.Вы не можете создать сокет для уже подключенного устройства Bluetooth?
Прежде всего, если устройство уже подключено, вам не нужно снова запускать процесс сопряжения.Вам просто нужно создать сокет для связи, который не будет работать, если устройство недоступно для связи.В последнее время я кое-что делал для этого и использовал следующий код, который отлично сработал для меня:
try {
Method m = device.getClass().getMethod("createRfcommSocket",
new Class[] { int.class });
BluetoothSocket mySocket = (BluetoothSocket) m.invoke(device, Integer.valueOf(1));
} catch (<VARIOUS EXCEPTIONS>) {
//Do stuff
}
Для подсказки пользователю выбрать устройство, вы можете запросить BluetoothAdapter длявсе сопряженные в данный момент устройства выглядят следующим образом:
Set<BluetoothDevice> bondedDevices = BluetoothAdapter
.getDefaultAdapter().getBondedDevices();
Наконец, можно создавать подключения к нескольким устройствам одновременно - посмотрите здесь: Android Bluetooth API подключается к нескольким устройствам