是否可以从Windows PC到ios设备进行数据传输(少于1mb的数据)?
我正在寻找通过蓝牙LE将数据从Windows机器传输到ios设备的解决方案,并发现bluegiga BLE112是一个不错的选择,但我不确定是否可以传输非GATT配置文件可以从.net发送的数据应用于ios应用程序。
有可能吗?
答案 0 :(得分:3)
在Android,iOS和Windows开发方面做了大量的BLE工作,我会说传输大量数据是一件痛苦的事。
真正的限制实际来自iOS方面,因为它们内部限制了传输延迟(这已从iOS 6改进到iOS 7,而我还没有在iOS 8上测试吞吐量)。
Bluegiga在此处有一些旧的性能测试数据:https://bluegiga.zendesk.com/entries/22400867--HOW-TO-Maximize-throughput-with-BLE-modules
我的个人测试(BLE112和iOS 6或7)使用确认数据传输显示大约1000字节/秒,使用未确认数据传输显示4000字节/秒。我不认为这是一个最佳的测试条件,但它提供了一个很好的球场。
来自Bluegiga(理想条件):
我们在两个BLE模块之间看到的最好的是大约60Kbps (未确认的数据包)。
BLE的未来看起来不错,因为BT 4.2正在推动吞吐量(通过增加数据包大小):https://en.wikipedia.org/wiki/Bluetooth#Bluetooth_v4.2
不幸的是,这款芯片可能要到今年晚些时候才能推出,谁知道iOS(和Android)何时会支持它。
答案 1 :(得分:1)
这是可能的,但BLE协议不适合通过蓝牙发送大量数据。如果你想这样做,Bluegiga有一个example project in their forum.
从他们的帖子:
Bluegiga SPP-over-BLE配置文件和项目旨在提供 最简单的方法将两个模块连接在一起 您可以来回发送任意数据,就像使用SPP一样 使用经典的蓝牙设备。 BLE协议不是为了构建的 由于这个原因,允许以非常有效的方式进行这种数据传输 非常小的数据包有效载荷大小(最大20个字节)并且相对较大 数据包之间所需的延迟(BLE无线电只能开启更少 超过25%的时间即使在最激进的传输中也是如此 组态)。但是,可以使用普通的蓝牙智能 GATT操作看起来好像有一个开放,透明的数据 连接的每一端之间的管道。
此外,他们还注意到最大吞吐量约为1 Kbyte / sec。因此,对于您想发送的尺寸可能不太实用。