Если вы хотите узнать, как использовать библиотеку 32feet.NET для связи с устройствами Bluetooth, прочитайте решение
В настоящее время я пытаюсь установить связь через Bluetooth между компьютером и самомонтируемым прототипом .NET Gadgeteer.
Прототип Gadgeteer состоит из материнской платы, блока питания и модуля bluetooth. Модуль находится в режиме обнаружения.
На компьютере запущена пользовательская программа bluetooth на основе 32feet.NET Bluetooth. Программа обнаруживает все устройства bluetooth в радиусе действия и пытается с ними связаться. Однако в настоящий момент это не делается автоматически, я должен ввести код сопряжения для устройства.
Как подключить устройства без ввода кода сопряжения?
Устройства обнаружены, проблема заключается в спаривании. Я много экспериментировал, но не нашел решения...
foreach (BluetoothDeviceInfo device in this.deviceList)
{
try
{
//BluetoothClient client = new BluetoothClient(this.CreateNewEndpoint(localAddress));
//BluetoothEndPoint ep = this.CreateNewEndpoint(device.DeviceAddress);
EventHandler<BluetoothWin32AuthenticationEventArgs> handler = new EventHandler<BluetoothWin32AuthenticationEventArgs>(HandleRequests);
BluetoothWin32Authentication auth = new BluetoothWin32Authentication(handler);
BluetoothSecurity.PairRequest(device.DeviceAddress, null);
}
}
Этот блок кода инициирует сопряжение, и он работает, но Windows просит меня ввести код сопряжения для устройства. Я прочитал о BluetoothWin32Authentication, чтобы предотвратить этот случай, но я не понимаю.
private void HandleRequests(object that, BluetoothWin32AuthenticationEventArgs e)
{
e.Confirm = true;
}
Это код обработчика событий (http://32feet.codeplex.com/wikipage?title=BluetoothWin32Authentication)
Если вы просто хотите, чтобы спаривание продолжалось, когда к устройствам SSP подключается, а затем обрабатывается обратный вызов и настройка e.Confirm = True будет достаточно - но это немного небезопасно...
Я запутался. Целью является то, что приложение и модуль гаджета могут отправлять данные в обоих направлениях без каких-либо помех пользователю.
Верно ли, что я не могу автоматически подключать устройства без взаимодействия с пользователем?
Верно ли, что если два устройства уже спарены, они могут обмениваться данными без взаимодействия с пользователем?