gpt4 book ai didi

c# - 使用 32Feet 查找配对的蓝牙设备是否在范围内

转载 作者:太空宇宙 更新时间:2023-11-03 15:01:56 26 4
gpt4 key购买 nike

我正在尝试制作一个简单的应用程序来显示附近的蓝牙设备(这个工作正常)

此外,我正在尝试查找特定的蓝牙设备(我有它的 MAC 并且它已经在 Windows 中配对)是否在范围内。这是一部 Android 手机,默认情况下它设置为对附近的设备不可见,但这不是问题,因为它已经在 Windows 中配对,对吧?

我正在使用这段代码:

BluetoothClient BTClient = new BluetoothClient();
BluetoothDeviceInfo[] BTDeviceInfo = BTClient.DiscoverDevices();

它正在寻找“可见设备”,它还会告诉我配对设备是否在范围内!

我如何检查配对设备是否在范围内?不去设置并使其“可见”会好得多

最佳答案

可能为时已晚,但您可以使用 BTClient.DiscoverDevicesInRange();并在该列表中查找您的设备。

另一种方法是尝试使用设备的蓝牙地址读取设备中的服务,如果它不在范围内,您将得到一个异常。

private static Boolean IsInRange(BluetoothDeviceInfo device)
{
Guid fakeUuid = new Guid("{F13F471D-47CB-41d6-9609-BAD0690BF891}");
try
{
ServiceRecord[] records = device.GetServiceRecords(fakeUuid);
return true;
}
catch(SocketException ex)
{
if (ex.ErrorCode == 10040) return true;
return false;
}
}

关于c# - 使用 32Feet 查找配对的蓝牙设备是否在范围内,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45833161/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com