如何使用单例模型来管理CoreBluetooth?

时间:2016-01-21 08:39:10

标签: ios swift singleton core-bluetooth

好的,过去几天我一直在检查 Singleton模型,我发现单例模型正是我需要实现的,以管理当前应用程序的蓝牙。 我在我定义的单例中输入CoreBluetooth API的中央管理器和外围函数。当我尝试从我的viewController调用该函数时,我不断收到多个错误,如

BlueCoreManager.shared.centralManager(CBCentralManager, didDiscoverPeripheral: CBPeripheral, advertisementData: [String : AnyObject], RSSI: NSNumber)

这只是我得到的许多错误中的一个。 BlueCoreManager是我在上面一行中的单例。

  

“无法使用类型的参数列表调用中央管理器   ((CBCentralManager,didDiscoverPeripheral:CBPeripheral,   advertisementData:[String:AnyObject],RSSI:NSNumber).Type)

所以我做了一些挖掘,并在github上发现了一些过时的源代码,使用单例模型进行蓝牙管理。我看到的是为每个函数定义了一个单例

  

(选择外设,连接外设,读外设等)

为每个人定义协议。这是最好的做法吗?我还需要为多个外设编写特定命令。另外,在源代码中,我注意到coreBluetooth api函数是在单例中定义的,但从未直接调用过。如果我参考单例中的其他函数,是否会自动调用这些函数?有人能否说明最佳进展方式?

0 个答案:

没有答案