32Feet - Откройте для себя только устройства в диапазоне

Есть ли способ обнаружить все устройства, которые в настоящее время находятся в радиусе действия, используя 32Feet?

Я старался

BluetoothDeviceInfo[] allDevicesInRange = client.DiscoverDevices(255, false, false, true);

Это возвращает все неизвестные устройства в диапазоне. После того, как я установил соединение с моим устройством, если я попробую это снова, он больше не найдет устройство (потому что оно больше не неизвестно). Я должен зайти в апплет Bluetooth Devices в Windows и удалить его, прежде чем он найдет его снова.

Я также попробовал оба

BluetoothDeviceInfo[] allDevicesInRange = client.DiscoverDevices(255, false, true, true);

а также

BluetoothDeviceInfo[] allDevicesInRange = client.DiscoverDevices(255, true, false, true);

В этом случае он действительно находит мое устройство каждый раз, но теперь он находит их, даже когда устройство выключено!

1 ответ

BluetoothDeviceInfo[] DiscoverDevices(int maxDevices, bool authenticated, bool remembered, bool unknown, bool discoverableOnly);

Вам придется сделать это в двух частях

  1. Обнаружьте все аутентифицированные устройства, т.е. те, которые у вас есть и к которым вы подключены, затем вручную попробуйте подключиться к каждому по очереди, чтобы проверить, находится ли он в зоне действия.

  2. Обнаружьте все устройства, которые не прошли проверку подлинности (при этом будут возвращены только те устройства, которые находятся в зоне действия, с которой вы не были / не связаны)

Другие вопросы по тегам