蓝牙扫描C#
Bluetooth scan C#
我正在 Windows10 上开发 C# WinForms 应用程序。我想执行蓝牙环境扫描并获取 PC 周围的设备列表。我还想要每个设备的RSSI。
我试过 32feet 库,但我无法访问 RSSI。
你有解决方案还是我应该迁移到 WPF/UWP?
好的,我找到了解决方案here。
- 您首先必须安装 Windows10 开发工具包。
然后在你的项目中你必须添加这个库:
C:\Program Files (x86)\Windows Kits\UnionMetadata\Windows.winmd
或者您可以安装 "UwpDesktop" NuGet 包。
这适用于控制台应用、Winforms、WPF 和 UWP。
这是一个简单的例子:
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);
}
}
}
我正在 Windows10 上开发 C# WinForms 应用程序。我想执行蓝牙环境扫描并获取 PC 周围的设备列表。我还想要每个设备的RSSI。
我试过 32feet 库,但我无法访问 RSSI。
你有解决方案还是我应该迁移到 WPF/UWP?
好的,我找到了解决方案here。
- 您首先必须安装 Windows10 开发工具包。
然后在你的项目中你必须添加这个库:
C:\Program Files (x86)\Windows Kits\UnionMetadata\Windows.winmd
或者您可以安装 "UwpDesktop" NuGet 包。
这适用于控制台应用、Winforms、WPF 和 UWP。
这是一个简单的例子:
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); } } }