设备关闭 BLE 时的 BluetoothLEAdvertisementWatcher - UWP
BluetoothLEAdvertisementWatcher when device turn off BLE - UWP
我做了什么:
我有一个可观察的集合 Display
。
当我收到 BluetoothLEAdvertisementWatcher.Received
事件时,我检查 RSSI。
如果RSSI > -65DBm,我在Display
中添加设备。
(RSSI 变成 -60 > -127 > -57 > -127 > -63 > -127 >......我有点好奇这是否正常)
问题:
Can I 'catch' when the user turns off BT/BLE of the device?
- so I can remove the corresponding device from
Display
.
唯一的事件是 Received
和 Stopped
,我认为这不可能像 devicewatcher 那样,但仍然...
如果这不可能,那也没关系;请只是comment/answer“这不可能完成”所以我不会白白挖掘:)
感谢任何帮助!
RSSI goes like -60 > -127 > -57 > -127 > -63 > -127 >...... I'm bit curious if this normal
这是正常现象,它取决于您的蓝牙设备灵敏度。如果您设置了以下内容,他将过滤掉不匹配的数据。但是对于我的测试 -127
将被观察者捕获。
watcher.SignalStrengthFilter.InRangeThresholdInDBm = -70;
watcher.SignalStrengthFilter.OutOfRangeThresholdInDBm = -75;
If RSSI > -65DBm, I add the device in Display
您可以使用 eventArgs.RawSignalStrengthInDBm
在 OnAdvertisementReceived
事件处理程序中获取 RSSI 值。然后做二次过滤。
Int16 rssi = eventArgs.RawSignalStrengthInDBm;
if (rssi >= -65)
{
// add to collection.
}
Is there a way I can catch whether a specific device is considered to be out of range?
目前,没有这样的 api 来检测特定设备超出范围。
我做了什么:
我有一个可观察的集合
Display
。当我收到
BluetoothLEAdvertisementWatcher.Received
事件时,我检查 RSSI。如果RSSI > -65DBm,我在
Display
中添加设备。(RSSI 变成 -60 > -127 > -57 > -127 > -63 > -127 >......我有点好奇这是否正常)
问题:
Can I 'catch' when the user turns off BT/BLE of the device?
- so I can remove the corresponding device from
Display
.
唯一的事件是 Received
和 Stopped
,我认为这不可能像 devicewatcher 那样,但仍然...
如果这不可能,那也没关系;请只是comment/answer“这不可能完成”所以我不会白白挖掘:)
感谢任何帮助!
RSSI goes like -60 > -127 > -57 > -127 > -63 > -127 >...... I'm bit curious if this normal
这是正常现象,它取决于您的蓝牙设备灵敏度。如果您设置了以下内容,他将过滤掉不匹配的数据。但是对于我的测试 -127
将被观察者捕获。
watcher.SignalStrengthFilter.InRangeThresholdInDBm = -70;
watcher.SignalStrengthFilter.OutOfRangeThresholdInDBm = -75;
If RSSI > -65DBm, I add the device in Display
您可以使用 eventArgs.RawSignalStrengthInDBm
在 OnAdvertisementReceived
事件处理程序中获取 RSSI 值。然后做二次过滤。
Int16 rssi = eventArgs.RawSignalStrengthInDBm;
if (rssi >= -65)
{
// add to collection.
}
Is there a way I can catch whether a specific device is considered to be out of range?
目前,没有这样的 api 来检测特定设备超出范围。