参考Dennis Mathews answer如何在iOS上指定蓝牙经典而不是LE?是否有Core Bluetooth Framework?
的api答案 0 :(得分:20)
Joels有一种非常明确的方法可以在iOS上使用Bluetooth classic。它与外部附件框架(除了蓝牙经典之外还包括直接硬件连接)。
您需要添加ExternalAccessory.framework
并指定" App communicates with an accessory
"在plist内部所需的背景模式下开始。但应注意,使用Bluetooth classic时,用户必须从系统蓝牙设置添加蓝牙设备。只有蓝牙LE,我们才能从应用端添加设备。
查看External Accessory Framework
上的文档在回答您关于MFi计划的问题时,这应该澄清:
我想开发一款与MFi配件通信的iOS应用。我是否需要加入MFi计划? 不,iOS应用开发者不需要加入MFi计划。应用程序开发人员需要的一切都在外部附件框架中, 这是iOS SDK中提供的。要访问iOS SDK,请加入 iOS开发人员计划:https://developer.apple.com/programs/ios/。
如果您想了解更多信息,请参阅MFi FAQ
答案 1 :(得分:1)
如果您的外部配件在连接iOS时不需要高带宽,并且您希望使用(或必须使用)2.x /经典BT,(而不是4.x / LE / Smart,带宽非常低但不需要MFi跳舞)您可以通过模拟配件中的BT HID键盘进行通信。
它几乎不是最佳的,特别是因为HID反向通道非常有限(我认为在基本键盘配置中点亮大写锁定键(HID第7页映射,如果我没记错).OTOH,如果您的主要任务是将数据推送到iOS设备,那么按键发送数据不会太糟糕。(甚至可能在测试过程中被视为美德)。
HID设备可以在表定义的键盘映射中声明其他功能,但我不确定iOS应用程序是否可以使用受制裁的API获取这些备用映射。