使用Android上的BLE固件,可以通过蓝牙一次连接多少设备?
搜索Android蓝牙固件source显示以下内容:
最大并发活动同步连接数(BTA_GATTC_CONN_MAX
):
最大并发活动通知(BTA_GATTC_NOTIF_REG_MAX
):
作为对比,我对iOS的体验是可以同时连接8个设备。
我曾尝试在Android 7.1上连接超过7台设备,蓝牙停止响应。开始和停止没有帮助;解决它的唯一办法就是重启设备。
在使用连接到4个以上设备的多个应用程序后,我可以从经验中说这些数字是理论上的。根据每个设备及其硬件的不同,您可以更轻松或更难以连接并保持与最大数量的BLE设备的连接。
主蓝牙设备可以与微微网中的最多七个设备(使用蓝牙技术的ad-hoc计算机网络)进行通信,但并非所有设备都达到此最大值。
你需要先了解蓝牙中的Master/Slave
。
我认为好的答案取决于你的目标。
当你知道"can communicate with how many devices" depend on Hardware (Bluetooth Chip)
时,你是对的。 Bluetooth chip on Apple iPhone 4, 5 or Samsung Galaxy S3, S4 ... totally different with Basic Bluetooth Chip
。
就我而言:
我正在使用与BLE相关的固件方面。
His peripheral device has used Basic Bluetooth Chip
因为它没有足够的内存来存储许多功能,如Apple iPhone 4,5或三星Galaxy S3,S4上的蓝牙芯片......
因此,his peripheral device only paired with one device in one time
。
谢谢,
这里的两个答案都是想要的,所以我想我应该添加一个:
不同的BLE硬件内置了连接限制。我认为我遇到的最低点是同时有3个连接,最高的是大约12-13个连接。这些是由于硬件设计的限制,并且与所使用的操作系统无关。通常,限制是由于硬件必须跟踪某些数据并且硬件中的内存量有限。
所以,我不是专门针对Android而知道的,但是对于操作系统级别的限制没有多大意义。可能当您尝试建立连接,并且由于硬件而达到了限制时,您应该收到某种阻止新连接的错误/异常。我认为蓝牙实际上存在“连接限制”错误,但有些硬件会提供其他例外情况,例如“资源不足”。同样,我不确定如何在Android级别上反映出来。
我在没有任何经典蓝牙开发知识的情况下进入BLE开发,我真的不知道“对”在BLE中意味着什么。这不是经典蓝牙中只存在的东西吗?
如果您正在谈论连接,当Android 4.3首次出现时,我在Nexus 7 2013上对SDK进行了一些测试。它可以连接的最大设备数量是4.我没有测试这个数字是否在4.4中有所改变,但是我可以确认它不会少于4。