在Windows Phone 8.1上连接和断开蓝牙BLE

时间:2015-01-12 11:59:48

标签: c# windows-phone-8.1 bluetooth-lowenergy

我有一台由Windows Phone 8.1和Android手机操作的设备。由于这些手机中只有一部可以随时使用该设备,因此我们需要在完成使用后立即断开设备。

在Android上,我们使用的库可以连接和断开连接,但在Windows Phone 8.1上,我似乎只能连接,我无法找到告诉手机断开与设备断开连接的方法。我必须手动取消设备中的手机,

有没有人能够断开配对的蓝牙设备?如果是,怎么样?

谢谢!

3 个答案:

答案 0 :(得分:2)

在GattDeviceService上调用Dispose(),确保所有GattCharacteristic对象都为null,并且不要从GattCharacteristic中取消注册ValueChanged事件处理程序。 最后调用GC.Collect()(微软告诉这是WP8.1中的一个错误,应该在Win10中修复)

答案 1 :(得分:0)

如果您通过StreamSocket进行通信,则Dispose()呼叫将断开连接。

根据您的代码,using()语句可能是最优雅的方式。

答案 2 :(得分:0)

这可能对win8应用程序没有帮助,但对于从事UWP应用程序的任何人来说,本文对配对和取消配对很有帮助: https://msdn.microsoft.com/en-us/windows/uwp/devices-sensors/pair-devices

它的要点是你调用DeviceInformation.Pairing.UnpairAsync方法。 https://msdn.microsoft.com/library/windows/apps/windows.devices.enumeration.deviceinformationpairing.unpairasync

调用该方法弹出窗口对话框,要求用户取消配对该设备的权限。