问题标签 [iobluetooth]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
swift - Swift MacOS IOBluetooth 无法连接到守护进程
我的问题是,在我启动 IOBluetoothDeviceInquiry 的第 35 行,它给了我以下错误:Failed to create connection to the daemon: Distributed objects message send timed out
这是我的代码不起作用:
我应该怎么做才能解决这个问题,以便我的应用程序可以继续开发?
提前致谢,
亚伦詹姆。
swift - IO蓝牙鼠标电池电量
是否可以使用IOBluetooth框架从蓝牙鼠标(在本例中为 Magic Mouse 2)读取电池电量?
这是否需要通过 L2CAP 或 RFCOMM 通道将请求写入数据?
我已经阅读了 SDP 服务记录,但不知道如何继续。
bluetooth - Get IOBluetoothDevice * from CBPeripheral * (Mac OS X)
I am wondering if there is a way i can get an IOBluetoothDevice *
object from a CBPeripheral *
object because I am making an advanced bluetooth controller framework (Its going to be based on IOBluetooth
) and Im using it so scan for Bluetooth Classic
and Bluetooth Low Energy
devices. Here are some of the problems:
IOBluetooth
does allow you to search for both networks but for some reason its not showing up all of theBluetooth Low Energy
Devices thatCoreBluetooth
is.If I use
CoreBluetooth
to search forBluetooth Low Energy
Devices I won't be able to get the address which I require for later use.
So is there any way i can get an IOBluetoothDevice
object from a CBPeripheral
?
thanks :D
objective-c - IOBluetooth 重命名 JBL/UE 扬声器
我目前正在 Objective C 中为 Mac OS X 构建一个大规模的蓝牙控制框架,并且我已经包含了一个重命名方法,它可以向兼容的蓝牙设备发送重命名请求(更改广告名称)。
例如:通过 JBL Connect 应用程序重命名 JBL 扬声器或通过 UE Boom 应用程序重命名 UE 扬声器。
学习如何做到这一点会很棒。
对于那些不太确定但对蓝牙很聪明的人,你认为这将如何实现?它会在 SDP 中还是在服务属性中,或者可能在低能耗部分中?我该怎么做。
即使有人可以为我提供 JBL Connect 应用程序的 .ipa,这将是一个巨大的帮助,因为我可以将它拆开并仔细查看内部是否有任何我可以学到的东西。
无论如何谢谢:D
macos - 如何通过 IOBluetooth 框架(macOS)获取 BLE 设备列表
我在通过IOBluetooth框架列出所有设备时遇到问题。有没有办法不仅可以获得经典设备,还可以获得 BLE 设备?
我的代码是
我知道我可以使用 CoreBluetooth 做到这一点,但我还需要过滤设备以匹配特定标准。
从这个答案我知道我可以做到这一点,但那个答案缺乏细节。现在我只是得到经典蓝牙设备的列表。
有人可以帮忙吗?
升级版:
现在我找到.searchType
了带有kIOBluetoothDeviceSearchClassic
和kIOBluetoothDeviceSearchLE
常量的方法。在 viewDidLoad 我做了以下事情:
ioBlutoothmanager.searchType = IOBluetoothDeviceSearchLE.rawValue
但它仍然只能找到经典设备。
升级版:
一直以来,它运行得如此正常,我没想到。它过滤了我不需要的所有设备,而且我没有 AirPods 来检查。
swift - IOBluetooth 的问题
我对下面列出的 IOBluetooth 框架有一些疑问。
我目前有一台运行 Big Sur v11.1 的 MacBook Pro(13 英寸,2018 年),当我打电话询问并尝试查找附近的设备时,它经常失败并且无法持续工作。另一方面,我有第二台运行 Mojave v10.14.6 的 MacBook Pro(13 英寸,2015 年),它具有完全相同的功能并且每次都能正常工作。我也一直在使用 blueutil 命令行工具进行测试:https ://github.com/toy/blueutil以及 PyBluez:https ://github.com/pybluez/pybluez并发现我的第二台运行 Mojave 的 MacBook 总是能找到附近的设备而运行 Big Sur 的 MacBook 则遇到了麻烦。你知道这是因为框架的潜在更新还是我运行 Big Sur 的笔记本电脑有问题?
我试图从我的第一台笔记本电脑打开 L2CAPChannel 到第二台笔记本电脑,反之亦然,但在 IOBluetoothDevice 对象(我已正确实例化)上调用 openL2CAPChannelSync 似乎永远不会返回 kIOReturnSuccess。我在这里也做错了吗?我附上了我在下面使用的代码片段(在其中我删除了我的其他设备的地址字符串)。
macos - Core Bluetooth 和 IOBluetooth 有什么区别
这个问题已经在 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 的主要现代用例是什么?
bluetooth - 无法在 MacOS Monterey 上创建蓝牙 SPP 连接
自从升级到 macOS Monterey 后,我们一直无法创建与任何硬件设备的蓝牙 SPP 连接。
SPP 服务似乎不受支持。列出设备的服务时,根本没有列出 SPP 服务,就像在以前的操作系统版本中一样。
SPP 与设备的连接被操作系统阻止(除了在设备仍在连接到其他蓝牙服务时我们打开套接字连接的极端情况)
我们使用的耳机类型的设备可以通过 A2DP、HFP 和其他一些标准服务成功配对并连接到计算机。但是,它无法连接到之前在 Big Sur 之前可用的 SPP 服务。有没有其他人遇到过类似的问题——目前是否有解决方法可以在 macOS Monterey 上建立稳定的蓝牙 SPP 连接?