这个问题已经在 2013 年的 Stack Overflow 上提出过,但需要更新。自 macOS 10.13 起,针对 macOS 的 Core Bluetooth 功能进行了更改,使其更符合 iOS。
该问题的答案是
CoreBluetooth 是一个用于蓝牙 LE 通信的 iOS 框架。IOBluetooth 是一个 OS X 框架
这不再是真的了,Core Bluetooth 并不是一个 iOS 框架,虽然 IOBluetooth是macOS独有的
CoreBluetooth 用于访问低功耗蓝牙 API。IOBluetooth 用于蓝牙经典接口
这也是不正确的,因为核心蓝牙并非专门用于 BLE。
CoreBluetooth 文档指出:
与蓝牙低功耗和 BR/EDR(“经典”)设备通信。
这似乎是直截了当的;Core Bluetooth 用于蓝牙通信,包括 BLE 和 Classic。
IOBluetooth 文档指出:
获得对蓝牙设备的用户空间访问权限。
但这并不是特别有启发性。
在 macOS 10.13+ 上的 CoreBluetooth 时代,IOBluetooth 与 macOS 上的 CoreBluetooth 的主要现代用例是什么?