蓝牙扫描C#

Bluetooth scan C#

我正在 Windows10 上开发 C# WinForms 应用程序。我想执行蓝牙环境扫描并获取 PC 周围的设备列表。我还想要每个设备的RSSI。

我试过 32feet 库,但我无法访问 RSSI。

你有解决方案还是我应该迁移到 WPF/UWP?

好的,我找到了解决方案here

  1. 您首先必须安装 Windows10 开发工具包。
  2. 然后在你的项目中你必须添加这个库:

    C:\Program Files (x86)\Windows Kits\UnionMetadata\Windows.winmd
    

    或者您可以安装 "UwpDesktop" NuGet 包。

  3. 这适用于控制台应用、Winforms、WPF 和 UWP。

  4. 这是一个简单的例子:

    using Windows.Devices.Bluetooth.Advertisement;
    
    namespace BeaconExample
    {
        class Program
        {
            static void Main(string[] args)
            {
                var watcher = new BluetoothLEAdvertisementWatcher();
                watcher.Received += Watcher_Received;
                watcher.Start();
            }
    
            private static void Watcher_Received(BluetoothLEAdvertisementWatcher sender, BluetoothLEAdvertisementReceivedEventArgs args)
            {
                Console.WriteLine(args.BluetoothAddress.ToString("x") + ";" + args.RawSignalStrengthInDBm);
            }
        }
    }