Как надежно отключить соединение Bluetooth - PullRequest
0 голосов
/ 06 февраля 2019

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

Я экспериментировал и пробовал разные вещи, но безуспешно.Я обнаружил, что при возникновении проблемы BluetoothClient показывает, что он подключен.Поэтому я пытался закрыть это существующее соединение разными способами: вызывая Close (), вызывая Dispose (), перераспределяя и т. Д. Ничто из этого не делает ситуацию лучше.Еще одна вещь, которую я попробовал, вместо того, чтобы ждать, пока я не захочу восстановить соединение, - это попытаться закрыть соединение, когда я знаю, что устройство отключено (я пробовал разные вещи, такие как вызов Close () или Dispose (),перераспределение и т. д.).Кажется, ничто не помогает.

Так что мой вопрос в том, существует ли надежный способ закрыть соединение Bluetooth, чтобы можно было повторно подключаться без выдачи исключений?

Я использую 32feet.NET/Библиотека InTheHand.NET, кстати.К сожалению, похоже, что нет какой-либо подробной документации по библиотеке, которую я могу найти.

Можно ли управлять соединениями Bluetooth без использования этой библиотеки?Все мои поиски в Google не нашли других вариантов, которые хорошо документированы.

...