Windows UWP BluetoothLEDevice缓存

时间:2018-05-04 06:52:41

标签: c# uwp bluetooth-lowenergy

无法找到有关UWP BluetoothLEDevice缓存的文档。例如。对于BluetoothLEDevice.GetGattServicesAsync()方法。我感兴趣的是:

  1. 如何缓存结果 - 每个BluetoothLEDevice实例,每个进程,其他一些范围?
  2. 使用BluetoothCacheMode.Uncached参数是否刷新缓存? (例如BluetoothLEDevice.GetGattServicesAsync(BluetoothCacheMode.Uncached)
  3. 缓存是否自动刷新?例如。什么时候第一次没有正确地从设备读取服务(通信错误),缓存是永远错误的,还是在一段时间后刷新了服务?
  4. 它如何影响BluetoothLEDevice.ConnectionStatus?我注意到,阅读缓存服务会将ConnectionStatus保留为Disconnected。但是,阅读Uncached服务会将其转为Connected

1 个答案:

答案 0 :(得分:1)

  1. 系统范围。
  2. 是的,我们希望缓存更新。
  3. 服务更改通知将导致我们刷新或阅读未缓存。
  4. 在空中交通上使用未缓存的力量,以便我们连接,否则我们只在需要时连接。例如,如果您订阅了值更改通知,并且远程设备发布了定向可连接广告,我们将连接以获取通知。我们连接时还有许多其他情况,但通常只在必要时才能保存远程设备电池。