缓存/重用 RxBleDevice 实例是否存在问题?

Are there issues with caching / reusing a RxBleDevice instance?

RxBleClient#scanBleDevices 发出一系列 ScanResult 对象。反过来,ScanResult#getBleDevice 提供来自这些发出的项目之一的 RxBleDevice 实例。

缓存 RxBleDevice 实例以避免必须执行未来扫描是否有任何问题?

几个潜在用例:

至少有两个选项:

  • 您可以自己缓存 RxBleDevice 个实例,只要您保留客户端实例即可。它在内部保留了一些对象的引用,这些对象的范围在客户端的生命周期内。
  • 您可以使用 RxBleClient#getBleDevice 传递 MAC 地址。 RxBleDevice 实例在客户端缓存,您不应期望在创建设备时出现性能问题。