Я пытаюсь открыть соединение BT с устройства, которое должно иметь возможность получать сообщения BT от 2 или более устройств.
В настоящее время я пытаюсь сделать это с двумя устройствами, которые ранее были сопряжены .
Чтобы открыть сокетное соединение, в моем классе соединения у меня есть строка, подобная следующей:
this.bluetoothServerSocket = bluetoothAdapter.listenUsingRfcommWithServiceRecord(APP_NAME, uuid)
Для этого требуется отдельный UUID для каждого устройства, с которым требуется связь.
Теперь для получения UUID для двух спаренных устройств, которые я использую:
bluetoothAdapter.bondedDevices?.forEach { device ->
Log.d("DEBUG", "DEVICE NAME: ${device.name}")
Log.d("DEBUG", "UUID: ${device.uuids[0].uuid}")
}
Итак, я ожидал получить 2 разных UUIDS для использования в сокете, но это, протестированное на реальных устройствах, давая мне одинаковый UUID для обоих устройств:
2020-02-19 11:33:21.357 24197-24197/? D/DEBUG: DEVICE NAME HUAWEI P20 Pro
2020-02-19 11:33:21.358 24197-24197/? D/DEBUG: UUID 0000110a-0000-1000-8000-00805f9b34fb
2020-02-19 11:33:21.359 24197-24197/? D/DEBUG: ---------------------------
2020-02-19 11:33:21.360 24197-24197/? D/DEBUG: DEVICE NAME Samsung Galaxy S7
2020-02-19 11:33:21.362 24197-24197/? D/DEBUG: UUID 0000110a-0000-1000-8000-00805f9b34fb
Что я здесь не так делаю?