使用BluetoothLEAdvertisementPublisher发布蓝牙广播,注意这个类只用于发布蓝牙广播,一般的用处是用于附近设备的发现和测量距离之类的,比如A设备发布BLE广播,B设备通过扫描到A的广播即可知道A处于附近,并且可根据广播的RSSI计算大概的距离。
1. 初始化BluetoothLEAdvertisementPublisher
BluetoothLEAdvertisementPublisher searchPublisher = new BluetoothLEAdvertisementPublisher();
2. 设置广播的数据,注意数据长度(超过最大长度广播会失败)
var data = new byte[10];
var manufacturerDataWriter = new DataWriter();
manufacturerDataWriter.WriteBytes(data );
searchPublisher.Advertisement.ManufacturerData.Add(new BluetoothLEManufacturerData
{
CompanyId = 0x0942, // 这个ID请根据情况自行设置
Data = manufacturerDataWriter.DetachBuffer()
});
3. 可以用这个事件查看广播状态: searchPublisher.StatusChanged += SearchPublisher_StatusChanged;