Это отличный пример использования, о котором мы говорили в прошлом.
Если это специально для посещаемости, то вам не нужно устанавливать соединение.Вы можете сделать рекламу каждого устройства, пока одно устройство постоянно сканирует.Таким образом, вы быстро создадите список устройств.
Если вы хотите делать больше, чем просто посещение, например, например, отправляя назначение каждому устройству, вам нужно создать меш.Для начала вы захотите использовать Strategy.P2P_CLUSTER.У нас есть 3 стратегии, доступные в ближайших соединениях (CLUSTER, STAR, POINT_TO_POINT), и кластер является наиболее общей.С помощью кластера вы можете подключаться к любому количеству устройств и получать входящие подключения с любого количества устройств.Или почти ... Bluetooth-радио внутри телефонов слабое и может удерживать только 3 ~ 4 соединения одновременно.
Чтобы иметь возможность подключить все ~ 30 устройств, я бы рекомендовал сформировать 'змею-как 'связь.Голова и хвост устройства будут сканировать и рекламировать одновременно (а устройства, которые ни к кому не подключены, считаются змеями длиной 1).Головы и хвосты будут продолжать соединяться друг с другом (будучи уверенными, что не будут соединяться с собой *), и вы довольно быстро получите длинную цепочку соединений, соединяющих всех вместе.Оттуда вы можете пересылать сообщения по цепочке, чтобы убедиться, что все их получают.
- Чтобы избежать подключения к себе, вы можете назначить каждому устройству случайное число (например, 1, 4, 8,10) и каждое устройство пытается подключиться к следующему наибольшему номеру, или вы можете передать сообщение при подключении и отключиться, если вы получаете эхо-сигнал назад (поскольку трансляция прошла по кругу).