UWP 没有找到任何使用 StartScanningForDevicesAsync 的 BLE 设备(Plugin.BLE for Xamarin)

UWP doesn't find any BLE devices using StartScanningForDevicesAsync (Plugin.BLE for Xamarin)

我正在尝试使用 Xamarin 查找 BLE 设备 Plugin.BLE 密码是

adapter.DeviceDiscovered += (s, a) => deviceList.Add(a.Device);
adapter.ScanTimeout = 30000;
await adapter.StartScanningForDevicesAsync();
            

UWP 找到 0 台设备。 同时,Bluetooth LE Explorer(Microsoft 的一个实用程序)找到了我的设备,以及许多其他设备。 可能是什么问题呢? Windows 10,.NET v4.8,Plugin.BLE v2.2.0-pre,Xamarin.Forms 5.0 我更喜欢使用 Xamarin,因为我希望我的代码是跨平台的 - Windows 和 Android

Nico 的评论解决了它。但是我有另一个问题,密切相关。现在 UWP 成功找到服务并更新特性。然而,在我从 Visual Studio 运行 得到的 Android 模拟器上,相同的代码没有找到任何东西。 我又想念什么了吗? 我在 AndroidManifest

中有这些行
    <uses-permission android:name="android.permission.BLUETOOTH" />
    <uses-permission android:name="android.permission.BLUETOOTH_ADMIN" />

    <!--this is necessary for Android v6+ to get the device name and address-->
    <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
    <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />

TIA

UWP doesn't find any BLE devices using StartScanningForDevicesAsync (Plugin.BLE for Xamarin)

请参考这个linkPlugin.BLE因为UWP是TBA状态,目前还不支持UWP。如果你确实想使用这个插件,请参考 MenaceSan 的评论。

您没有使用整个分支。只需将 UWP 项目从中拉出即可。 只需复制 UWP 项目 (Plugin.BLE.UWP) 并将其作为引用项目包含在内(不使用 NuGet)

UWP doesn't find any BLE devices using StartScanningForDevicesAsync (Plugin.BLE for Xamarin)

请检查您是否为UWP平台添加了蓝牙功能,双击Package.appxmainfest文件->找到功能->启用蓝牙功能。

However on Android simulator that I run from Visual Studio, the same code doesn't find anything.

恐怕您无法为 Android 模拟器启用蓝牙设备,请参阅此文档 limitations,请使用物理设备测试应用程序。