【问题标题】:C# UWP BluetoothLEDevice.FromIdAsync stop workingC# UWP BluetoothLEDevice.FromIdAsync 停止工作
【发布时间】:2018-05-20 18:09:38
【问题描述】:

我正在使用 Visual Studio 2017 下的 UWP 框架开发蓝牙应用程序。感谢 Microsoft 示例(C# SDK 示例 BluetoothLE 编写得很好),一切进展顺利。

在我开发的第四天,APIBluetoothLEDevice.FromIdAsync在行:

bluetoothLeDevice = await 
    BluetoothLEDevice.FromIdAsync(bleDeviceToConnect.Id); 

在我的应用程序和我用作示例的 Microsoft 原始示例中都不再工作(我没有触及任何东西)。

我不明白,因为我没有更改任何内容(在我的项目属性中,我的计算机上也没有任何 Windows 更新)。当我调用该函数时,它永远不会返回。

我尝试将我的蓝牙对象与一些智能手机应用程序一起使用,我的硬件运行良好。

调用是在尝试中进行的,但没有异常被捕获,函数永远不会返回(我等了一段时间,我什至没有超时)。

你见过吗?关于如何解决它的任何输入?

我完全卡住了,无法继续,因为我现在根本无法连接任何对象...

【问题讨论】:

    标签: c# uwp bluetooth-lowenergy


    【解决方案1】:

    如果您的代码和示例代码有同样的问题,唯一的原因可能是您的设备不可用。
    它遥不可及,甚至已关闭或已连接。
    如果您使用的是 deviceManager 或 deviceWatcher,也可能是您的操作系统提供了过时的信息。 对于 BluetoothLE,windows 的 deviceManager 和 watcher 只是麻烦。

    Windows 有时会保留配对信息和连接状态,即使设备无法触及或已关闭。
    很多时候,您必须在设置中删除并重新添加您的设备才能使其再次可用,否则需要重新启动。
    为了让您摆脱所有这些麻烦,我建议您使用广告观察者。
    如果您的设备被广告观察者发现,您就知道它可以到达并且可以连接,并且无需在设置中添加您的 BLE 设备。
    如果需要,我可以提供一个简单的例子。

    【讨论】:

      【解决方案2】:

      这可能是因为 COM 安全性而发生的(您可能知道基于 WinRTYY 的 UWPAPI,它在 COM 之上工作)。 This 应该有帮助。

      【讨论】:

        【解决方案3】:

        大家好,感谢您对此提供的帮助。 我在另一台电脑上拍了一张,效果很好。 今天早上我仔细检查,发现即使 Widnows 也无法通过蓝牙连接到任何东西(我尝试使用我通常使用的蓝牙扬声器)。 是驱动问题,不知道是怎么回事,但是我的电脑驱动停止工作了,我添加重新安装。

        【讨论】:

          猜你喜欢
          • 2018-05-17
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多