我在Windows 10的WinForms应用程序中使用Windows.Devices API。我正在连接蓝牙条码扫描器。连接工作正常,我在建立连接时以及连接断开(断开连接)时获得事件。 但是当我更换扫描仪中的电池并且扫描仪重新连接到Windows时,我没有得到任何事件。 我现在的问题是:当设备通过Bleutooth重新连接时,是否有可能获得活动?
我需要在通过蓝牙重新连接设备后重新将插座连接到设备。
编辑:亲爱的管理员,这是而不是 WinForms问题。这个问题甚至根本不涉及UI。它只是Windows.Devices UWP API的API问题。请停止建议更改标签。
由于 斯文
一些示例代码:
class ViewModel {
// other methods, fields
// ViewModel can call returnToPreviousScreen.onComplete()
CompletableSubject returnToPreviousScreen = CompletableSubject.create();
Completable returnToPreviousScreen() { return returnToPreviousScreen; }
}
仅在第一次连接和断开设备时调用事件:
observeWhenToReturnToPreviousScreen
答案 0 :(得分:0)
到目前为止我发现的事件似乎很常见,事件永远不会再次升起。必须主动创建到设备的新连接,即,例如通过打开用于接收数据的套接字。 因此我的问题的解决方案是通过调用
连接到蓝牙设备StreamSocket.ConnectAsync()
再次建立新连接。之后,ConnectionStatusChanged将以状态连接的方式引发。
祝你好运斯文