Я унаследовал приложение, которое должно подключаться и отключаться от устройства через Bluetooth. Приложение более-менее работает, но по мере добавления функционала понял, что переподключение к устройству после первого подключения проблематично. Существующий код обрабатывает проблемы, перехватывая исключения, возникающие во время подключения, удаляя объект BluetoothClient, перераспределяя его и повторяя попытку. Пользовательский интерфейс моего приложения, кажется, блокируется во время возникновения этих исключений, что, очевидно, проблематично.
Я экспериментировал и пробовал разные вещи, но безуспешно. Я обнаружил, что при возникновении проблемы BluetoothClient показывает, что он подключен. Поэтому я пробовал разные вещи, чтобы закрыть это существующее соединение: вызов Close(), вызов Dispose() и перераспределение и т. д. Ничто из этого, кажется, не улучшает ситуацию. Еще одна вещь, которую я пробовал, вместо того, чтобы ждать, пока я захочу переподключиться, - это попытаться закрыть соединение в то время, когда я знаю, что устройство отключено (я пробовал разные вещи, такие как вызов Close() или Dispose(), перераспределение и др.). Кажется, ничего не помогает.
Итак, мой вопрос: есть ли надежный способ закрыть соединение Bluetooth, чтобы вы могли повторно подключиться, не вызывая исключений?
Я использую библиотеку 32feet.NET/InTheHand.NET, кстати. К сожалению, нет подробной документации по библиотеке, которую я могу найти.
Можно ли управлять соединениями Bluetooth без использования этой библиотеки? Все мои поиски в Google не нашли других вариантов, которые хорошо документированы.
.Close()
. Может быть полезно: stackoverflow.com/questions/39470036/ - person Symon   schedule 06.02.2019