我正在使用此代码 - > https://github.com/Microsoft/Windows-universal-samples/blob/master/Samples/BluetoothLE/cs/Scenario2_Client.xaml.cs on" Blue Gecko bgm13p22"微控制器BLE设备读取其服务和特性。如果我使用" BluetoothCacheMode.Uncached"模式它说"设备无法访问"但是当我使用" BluetoothCacheMode.Cached"模式它显示已存储的特征或服务,但不是实时的。
为什么会这样?
请帮忙 感谢
答案 0 :(得分:0)
您说“已存储的特征或服务”,因此我认为您已成功读取它们至少一次。它们已保存在蓝牙缓存中。
在您的实例中,使用BluetoothCacheMode.Cached
无法连接到设备以查找特征 - 它会在蓝牙缓存中查找,这就是为什么它不显示“实时” ”。使用BluetoothCacheMode.Uncached
尝试连接并且失败。
将“Device Unreachable”作为响应,首先要尝试刷新设备对象。
BluetoothLEDevice device = await BluetoothLEDevice.FromIdAsync(deviceId);
.....