- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
此问题已在 Stack Overflow in 2013 上被问到, 但它需要更新。自 macOS 10.13 以来,macOS 的 Core Bluetooth 功能已更改,以使其更符合 iOS。
这个问题的答案是
CoreBluetooth is an iOS framework for Bluetooth LE communication. IOBluetooth is an OS X framework
这不再是真的了,Core Bluetooth 不是 独有的 iOS 框架,尽管 IOBluetooth 是 macOS 独有的
CoreBluetooth is for accessing Bluetooth Low Energy APIs. and IOBluetooth is for Bluetooth Classic Interface
这也不正确,因为 Core Bluetooth 并非专用于 BLE。
CoreBluetooth 文档指出:
Communicate with Bluetooth low energy and BR/EDR (“Classic”) Devices.
这看起来很简单; Core Bluetooth 用于蓝牙通信,包括 BLE 和 Classic。
IOBluetooth 文档指出:
Gain user-space access to Bluetooth devices.
但这并不是特别有启发性。
在 macOS 10.13+ 上的 CoreBluetooth 时代,IOBluetooth 与 macOS 上的 CoreBluetooth 的主要现代用例是什么?
最佳答案
CoreBluetooth 支持 BLE、GATT over BR/EDR 和 L2CAP。尽管它是摘要,但它不支持大多数经典配置文件。特别是,它仅支持 GATT over BR/EDR。它不支持其他协议(protocol)。 (根据我的经验,GATT over BR/EDR 非常罕见。我从未遇到过真正支持它的设备。)它不支持 SDP,不能用于发现大多数经典设备。
IOBluetooth 支持各种经典协议(protocol),包括 SDP、RFCOMM 和 L2CAP。它支持音频和 HCI 设备。据我所知,它并不直接支持 BLE;为此,它嵌入了 CoreBluetooth。 (我相信它可以对 BLE 进行一些非常低级别的发现,但这不是您想要使用的。)
我认为这在 10.13 中没有根本改变。最大的变化(我认为主要是为了支持 Catalyst)是 Core Bluetooth 在平台之间变得更加统一。我不认为这从根本上改变了框架的用途。
关于macos - Core Bluetooth 和 IOBluetooth 有什么区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68793810/
CoreBluetooth 框架和 IOBluetooth 框架(用于 MAC 应用程序)有什么区别? 最佳答案 CoreBluetooth 是一个用于蓝牙 LE 通信的 iOS 框架。 IOBlue
我想要做的是在我的 Mac 上使用我的 iPhone 上的 Apple 通知中心服务 (ANCS)。为了让我的 Mac 出现在我 iPhone 的蓝牙设置中,我显然需要使用服务请求。 到目前为止,我尝
我使用 Xcode 5.1.1 并尝试添加 IOBluetooth 框架但找不到它。我只找到了 coreBluetooth 框架。我如何找到它?不再支持了吗? 最佳答案 IOBluetooth 仅供
我需要了解一些关于 MAC 的 IOBlueTooth 框架的事情: 这个框架支持 BTLE 吗? 它与iOS框架CoreBlueTooth有什么不同? 要在 MAC OSX 上支持 BTLE,我们是
此问题已在 Stack Overflow in 2013 上被问到, 但它需要更新。自 macOS 10.13 以来,macOS 的 Core Bluetooth 功能已更改,以使其更符合 iOS。
此问题已在 Stack Overflow in 2013 上被问到, 但它需要更新。自 macOS 10.13 以来,macOS 的 Core Bluetooth 功能已更改,以使其更符合 iOS。
我有一个 Cocoa 应用程序,它从 applicationDidFinishLaunching 中启动一个新的 NSThread(线程 A)。 线程 A 成功创建 RFCOMM 连接,然后生成另一个
我打算做一些简单的实验,将模拟击键从 mac 发送到 IOS,我正在尝试决定将我的精力花在哪个框架上。 我的印象是 CoreBluetooth 对此来说级别太高,而 IOBluetooth 将是最佳选
我正在做一个需要蓝牙 2.1 的项目,我正在尝试制作一个测试客户端来连接到硬件。 所以我一直在研究 IOBluetooth 的“文档”,并设法广播了一个 SDP 服务记录。 在设备 (android)
在工作中,我被赋予了使命 :) 移植一个连接到设备以执行操作的 Android 库(由于 NDA,我不能说更多)。 Android 代码使用 getRemoteDevice(macAddress) 和
我无法理解 API 来设置在 OSX 上运行的 l2cap(或 RFCOMM)客户端/服务器,就像在 Linux 上使用 BlueZ 一样。 在 Linux 上,我只需为服务器打开一个套接字、绑定(b
我在通过 IOBluetooth 列出所有设备时遇到问题框架。有没有办法不仅获得经典设备,还获得 BLE 设备? 我的代码是 let ioBluetoothManager = IOBluetoothD
我是一名优秀的程序员,十分优秀!