Android Bluetooth API подключается к нескольким устройствам

Возможно ли подключение нескольких устройств? кто может поделиться кодом для меня! Эта проблема смутила меня в течение долгого времени! Спасибо!

Ответы

Ответ 1

Я бы сказал, что код не проблема. Правильная реализация - это управление потоком для каждого соединения, однако я обнаружил, что количество устройств, к которым вы можете подключаться одновременно, ограничено в зависимости от реализации телефона Bluetooth. Спецификация Bluetooth указывает, что 7 устройств могут быть подключены, однако я нашел телефоны Android, которые могут обрабатывать только 1 соединение Bluetooth, в то время как другие могут работать 6. Это действительно помогло бы сообществу разработчиков Bluetooth, если бы кто-то из разработчиков Android разработал более углубленный характер.

Ответ 2

Да, вы можете настроить несколько соединений Bluetooth (не менее RFCOMM-соединений). Просто используйте альтернативный поток для подключения, и он будет работать нормально (я думаю) См. Также: http://developer.android.com/resources/samples/BluetoothChat/index.html

Изменить, прокомментированный макет нечитабелен: В функции connectThread измените:

tmp = device.createRfcommSocketToServiceRecord(MY_UUID);

в

Method m = device.getClass().getMethod("createRfcommSocket", new Class[] {int.class});
tmp = (BluetoothSocket) m.invoke(device, 1);

Ответ 3

Да для подключения нескольких устройств к серверу bluetooth server можно попробовать lib

Ответ 4

Как сказал Барри, вы можете подключиться к нескольким устройствам. Просто создайте новый поток для каждого подключения. Вам нужно будет иметь список "ConnectThread" и "ConnectedThread", которые вы отслеживаете. Поэтому вам нужно только адаптировать его для нескольких потоков (и, конечно же, реализовать возможность выбора нескольких устройств). Я сделал это, и это не слишком сложно.

Если вы хотите подключиться к устройству и затем подключиться к другому (один за другим, используя оригинальные меню), вам может потребоваться еще одна работа.

Ответ 5

Для создания нескольких соединений вам необходимо создать отдельный поток для каждого устройства, которое вы хотите подключить. Каждый поток разделяет методы чтения и записи данных на удаленное устройство.

см. эту ссылку

Проблема с множественным подключением Bluetooth для Android Bluetooth?