Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/232.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 安卓<-&燃气轮机;iOS直接通信(蓝牙)。可能吗?_Android_Iphone_Ios_Bluetooth_Wifi Direct - Fatal编程技术网

Android 安卓<-&燃气轮机;iOS直接通信(蓝牙)。可能吗?

Android 安卓<-&燃气轮机;iOS直接通信(蓝牙)。可能吗?,android,iphone,ios,bluetooth,wifi-direct,Android,Iphone,Ios,Bluetooth,Wifi Direct,首先,我是一名安卓开发者,所以这个问题要问所有的iOS开发者 有可能实现Android iPhone/iPad的直接通信吗? 有些人说这是不可能的,有些人说是的 我想有两种可能的技术将是蓝牙和/或Wi-Fi Direct。 不推荐使用Wi-Fi Direct,因为姜饼不支持Wi-Fi Direct,据我所知,iPhone也不支持Wi-Fi Direct(可能是iPhone 6,我从传闻中听说) 众所周知,通过使用GameKit在iOS设备之间实现蓝牙通信,下面是一个示例 我不明白与GameKit

首先,我是一名安卓开发者,所以这个问题要问所有的iOS开发者

有可能实现Android iPhone/iPad的直接通信吗?
有些人说这是不可能的,有些人说是的

我想有两种可能的技术将是蓝牙和/或Wi-Fi Direct。
不推荐使用Wi-Fi Direct,因为姜饼不支持Wi-Fi Direct,据我所知,iPhone也不支持Wi-Fi Direct(可能是iPhone 6,我从传闻中听说)

众所周知,通过使用GameKit在iOS设备之间实现蓝牙通信,下面是一个示例

我不明白与GameKit沟通时有什么特别之处??
消息是否以某种方式进行了包装,在消息的开头和结尾都有额外的字节?很好,我们可以在Android中以同样的方式包装消息
消息是否已加密?!!如果是这样的话,我们能在安卓设备接收到它们时解密吗


欢迎任何想法、解决方法或其他黑客解决方案

对于同一本地网络上的设备,Bonjour(也称为zeroconf)是不同机器/设备上的进程发现并相互交互的好方法


有关安卓系统实现Bonjour的一些提示,请参阅。

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

Bluetooth LE仅受少数Android设备支持(它还不在AOSP中),因此它还没有真正的用处,即使它确实支持点对点

我已经了解到,您可以通过Wi-Fi direct进行所需操作,例如,使用此库:
它说它同时支持Android和iOS—我自己还没有尝试过,但它似乎可以满足您的需求。

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

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

2。BluetoothManager:这是私有框架。我使用这个框架来发现非iOS设备。我也建立了联系。但是不能进行数据交换。我认为它仍在开发中。有关参考资料,请参考


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

相同的本地网络?不!设备不属于本地网络。事实上,没有网络,也没有互联网。这就是为什么我提到wifi direct,而不是简单的wifi,这也是为什么蓝牙很重要的原因@Caleb我需要创建自己的应用程序来进行这种通信是可能的吗?虽然我无法发现从我的iPhone运行的bounjour服务(CocoaHTTP库),但我能够硬编码iPhone热点的IP地址(默认值为170.20.10.1)在Android上移植并连接到它,然后检索iPhone上托管的网页。我认为问题在于p2p直接通信。在这种情况下,iOS上的Bonjour C库没有任何帮助,因为:它使用封闭源代码实现通过经典蓝牙连接检测p2p设备,而Android不支持这种连接您称之为重复的问题是在一年多前提出的。有人会期待最近的更新。但感谢您将问题链接到此链接中的一些相关信息:但仍然找不到好的答案,因为我猜android bluetooth api是一个更高的级别(与处理输入输出流一样简单)对于iOS解决方案,你必须从我所能说的更深入一点。也许会有一点延迟,但技术已经发展:目前的状态是iOS和Android之间的连接可以通过BLE实现,但是仍然有许多Android不支持BLE外围模式,加上Android BLE堆栈非常不稳定。此外,WiFi Direct由Android支持,但在iOS上尚不公开。如果可以的话,我建议您看看可以为您实现跨平台p2p的框架,这样您就不需要花时间编写网络代码。这类框架可以是我正在使用的框架,也可以是谷歌附近的框架。您说您成功地在这些框架之间传输了数据通过CoreBluetooth启用BLE的设备。您正在与哪种BLE设备通话?您能否确认我/我们您已成功地将数据传输到Android设备,如三星Galaxy S4或Nexus 4?或仅一个BLE pin?@V-Xtreme@kl94:对于数据传输,您只需要两个启用BLE的设备,无论它们是否为iOS设备,android设备或BLE调制解调器。如果您能够呈现外设、服务和特征等级别,您可以根据特征的属性对该特征执行任何操作,即读/写/通知。这是一个链接,指向应用程序提供的一些示例源代码乐:我有一个设备“socketMobile”条形码传感器。当我实现CoreBluetooth选项时,此设备未出现在列表中。我如何知道设备何时为BLE或普通Bluetooth?。后来我实现了BluetoothManager.framework,该功能正常工作,但当我尝试编译时,xcode(或iTunes connect)显示问题,因为这是一个私有库。我需要其他解决方案。。Thanks@V-Xtreme,我可以连接到启用BLE的万向节上吗?并发送命令