Android< - > iOS直接通信(蓝牙)。可能吗?

时间:2013-03-22 21:23:55

标签: android iphone ios bluetooth wifi-direct

首先,我是一名Android开发人员,因此问题是所有iOS开发人员。

是否可以实现Android< - > iPhone / iPad 直接沟通
有些人声称这是不可能的,其他人则认为是。

我猜两种可能的技术将是蓝牙和/或Wi-Fi Direct。 建议不要使用Wi-Fi Direct,因为Gingerbread不支持它,据我所知,iPhone不支持(也许是iPhone 6,正如我从谣言中听到的)

众所周知,使用 GameKit 在iOS设备之间实现蓝牙通信,此处为reference

在与GameKit沟通时,我不明白有什么特别? 在消息的开头和结尾有多余的字节,消息是包装吗?好的,我们可以在Android中以相同的方式包装消息!
消息是加密?!!如果是这样,我们可以在Android设备收到它们时对它们进行解密吗?

欢迎任何想法,变通方法或其他黑客解决方案!

3 个答案:

答案 0 :(得分:16)

iOS中有三种框架可用于开发蓝牙应用程序:

<强> 1。 GameKit :这是一个公开的框架。但使用此功能,您只能在两台iOS设备之间建立和通信。所以这个框架有其自身的局限性。

<强> 2。 BluetoothManager:这是私有框架。我使用此框架来发现非iOS设备。我也建立了连接。但是无法进行数据交换。我认为它仍在开发中。作为参考,您可以参考this link

第3。 CoreBluetooth:这也是公共框架。这只能发现已启用BLE的设备。我已成功使用它在启用BLE的设备之间传输数据。

答案 1 :(得分:3)

iOS没有实现允许其与其他操作系统通信的任何标准蓝牙协议。 GameKit是专有的,如果很容易破解它,那么人们就已经这样做了(而苹果公司也会关闭这个漏洞)。

蓝牙LE仅受少数Android设备的支持(它还没有在AOSP中支持)所以它还没有真正有用,即使它确实支持点对点。

我已经读过可以通过Wi-Fi直接执行您的操作,例如使用这个库: https://www.alljoyn.org/ 它说它支持Android和Android。 iOS - 我自己没有尝试过,但它似乎做了你想做的事。

答案 2 :(得分:1)

对于同一本地网络上的设备,Bonjour(a.k.a。zeroconf)可以成为不同机器/设备上的进程发现和互动的好方法。

请参阅 apple bonjour for android 以获取有关Bonjour Android实施的一些提示。