如何通过蓝牙将硬件设备连接到Iphone应用程序

时间:2016-07-19 07:09:01

标签: c++ ios spp ios-bluetooth

我有一个硬件设备可以通过蓝牙与Android和IOS上的第三方应用程序进行通信,以便来回发送数据。 使用Android我能够实现这一点,但是在IOS的情况下我没有任何信息。

到目前为止,收集的与IOS设备配合使用的信息是: 1.应用程序在Iphone 5上运行 2.硬件启用了MFI 3.支持IAP2

请指导如何将硬件连接到应用程序以及其他哪些信息至关重要? 是否需要连接AppName,BundleID,BundleSeedID和ProtocolName?如果是,我们如何获得这些细节?

我尝试解压缩应用程序,但Info.plist文件看起来很乱,无法从中获取太多信息。

目前我可以通过蓝牙连接硬件和iPhone,但我真正关心的是如何与其上的特定应用程序进行通信。

此外,如果您可以提供一些链接或伪代码来启动硬件和IOS应用程序之间的会话。

1 个答案:

答案 0 :(得分:0)

我假设您已经在Android上连接了SPP个人资料。但是对于iOS,SPP(BLE是另一个故事,不需要MFi)是隐藏的,但需要MFi身份验证原始数据链接。

由于您要在硬件设备和iPhone之间建立原始数据链接,因此您需要:

  1. 确保您的硬件具有MFi芯片,通常该芯片通过I2C与您的硬件连接。
  2. 在步骤1之后,确保您可以在硬件上与此芯片通信,幸运的是硬件供应商或MFi供应商将支持这种代码或二进制文件。
  3. MFi频道有一个特定的UUID(可能由Apple定义?)来取代SPP官方(由Bluetooth SIG定义)UUID,因此如果你想在硬件和iPhone之间建立连接,你需要注册iOS定义了UUID并使其与普通的SPP配置文件相同。
  4. 创建RFCOMM频道后,iOS首先会对链接进行身份验证,就像三方握手一样,因此您的硬件只需与MFi芯片通信并将令牌传输到iOS。
  5. 之后,iOS会为您的硬件设置此RFCOMM频道(实际上与SPP相同),然后您可以在它们之间发送/接收数据。