iPhone 蓝牙通信示例

标签 iphone ios ios5 bluetooth

我一直在尝试寻找与 iOS 上的蓝牙设备通信的示例,但一直没有找到。据我了解,尚不支持 SPP。在最简单的层面上,我想向我正在创建的蓝牙设备发送一个简单的 1 或 0 信号。 (这是一个可以打开和关闭某些东西的蓝牙开关)。有没有办法通过 HID 或 HFP 配置文件巧妙地做到这一点?

最佳答案

您问题的简短答案是 you can't connect to an arbitrary Bluetooth device您可能碰巧拥有,您只能连接到通过 Apple 许可计划(即“Made for iPod/iPhone”标签)的蓝牙设备。来自 Apple 的文档:

Q: [The External Accessory framework allows] my application to communicate with Bluetooth devices. So why doesn't my application see the Bluetooth accessory sitting next to my iPhone?
A: The External Accessory framework is designed to allow iOS applications to communicate only with hardware accessories that are developed under Apple's MFi licensee program.

因此没有用于从 iOS 中访问任意蓝牙设备的公共(public) API:您必须通过外部附件框架才能通过蓝牙进行通信,而 EAF 的任务是“与 MFi 设备通信” ”,而不是“与任意外部设备通信”。足够聪明的开发人员可能会破解其中的内容,但是 -

  • 这是一项不平凡的工作
  • 您极不可能通过 App Store 审批流程

所以它的百分比并不高 - 这样做的努力不太可能返回你。

如果已经存在可以强制执行您想要的操作的 MFi 设备,那可能是您最好的机会 - 当然,您无需自行完成 MFi 批准/许可流程。如果您想这样做,请尝试并祝您好运。

我回答这个问题晚了,因为 Zeroxide 的回答不正确(您可以在您的 iOS 设备上使用随机蓝牙键盘,因为 Apple 实现了该连接,这不同于为您提供公共(public) API 路径做同样的事情),我发现 Rokridi 的回答是不完整的,尽管是朝着正确的方向前进。

编辑:关于Bluetooth Low-Energy 的链接Apple 页面已添加警告。设备。所以存在一个漏洞,但它不是一个大漏洞,因为迄今为止实际生产的蓝牙 LE 设备非常非常少。

关于iPhone 蓝牙通信示例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9386541/

相关文章:

iphone - NSMutablearray 意外行为 : all objects equal to last object added

ios - 如何从导航 Controller 一次弹出两个 View ?

iphone - 如何从录制的视频中获取帧作为图像 -AVFoundation(图像作为缩略图)

iphone - 为什么 Core Data 比 SQLite 快

ios - Xcode:如何让xcodebuild构建一个包含子项目的项目

ios - "Performing a coSTLy unpadding operation!"——它是什么,如何修复?

javascript - 当我尝试在 native webview 中加载 https 网页时,它显示空白页面

java - 共享和存储 RSA - Java 服务器中的公钥,反之亦然

iphone - iOS向前兼容或向后兼容

ios - 从iPhone设备读取和写入sqlite数据库中的数据时出错