我正在开发一个 iOS BLE 应用程序,一切都很好。我在一个单例类中处理 BLE,该类discoverPeripheral()
在视图控制器的viewDidAppear()
. 从那里我连接设备并交换数据。
现在我正在尝试在我的应用程序中实现 VIPER 架构,但我无法确定这个 BLE 部分将放置在哪里。因为目前我的 BLE 代码在视图显示时被激活。我想出了以下方案:将ble扫描放在presenter中,一旦视图进入内存,请求presenter开始扫描。演示者将要求 BLE 单例使用适当的 UUID 进行扫描,一旦收到数据,通知交互器将其存储到数据库中,然后更新 UI。