多个蓝牙连接

我想通过蓝牙连接3个设备(我的Droid必须连接到2个蓝牙设备)。 我已经连接我的Droid到1设备使用蓝牙聊天我应该如何修改它的多个蓝牙设备? 请问你能帮帮我吗?

我正在寻找一种方式来连接4个设备与蓝牙,我发现以下内容。

http://groups.google.com/group/android-developers/browse_thread/thread/69d7810f6ef9bb7d

我不确定这是你想要的。

但为了使用蓝牙连接2台以上的设备,您必须为每个要连接的设备创build一个不同的UUID。

按照链接查看代码示例和更好的解释。

你可以尝试我的lib多个蓝牙连接:

http://arissa34.github.io/Android-Multi-Bluetooth-Library/

你看过BluetoothAdapter Android类吗? 您将一台设备设置为服务器,另一台设置为客户端。 这可能是(尽pipe我自己没有考虑过)将多个客户端连接到服务器。

我已经成功地将BlueToothaudio设备连接到手机,同时它也具有与另一个手机的BluetoothAdapter连接,但是我还没有尝试过使用三部手机。 至less这告诉我,蓝牙无线电可以容忍多个同时连接:)

两个UE Boom蓝牙扬声器可以形成立体声,这意味着手机可以同时传输到两个蓝牙设备。 原因是蓝牙4.0最多可支持同一微微网上的两个面向同步连接(SCO)的链路,而A2DP则基于SCO链路。

您的需求“蓝牙聊天”基于SPPconfiguration文件,SPP基于RFCOMM协议。 幸运的是,即使蓝牙2.1可以支持多个RFCOMM频道,所以是的,你可以有多个蓝牙连接互相聊天。

是的,理论上,您的设备可以同时连接到另外7个蓝牙设备。 这种连接被称为微微网。 更复杂的连接模式是散点图。

它被限制为7个其他设备的原因是因为L2CAP协议中的LT_ADDR的分配位域仅为3。

不完全正确 – 看看规格摘要

逻辑链路控制和适配协议(L2CAP)

L2CAP在蓝牙协议栈内使用。 它将数据包传送到主机控制器接口(HCI)或无主机系统上,直接传送到链路pipe理器/ ACL链路。 L2CAP的function包括:

  • 在不同的高层协议之间复用数据。
  • 数据包的分割和重组。
  • 提供组播数据对其他一组蓝牙设备的单向传输pipe理。
  • 高层协议的服务质量(QoS)pipe理。

L2CAP用于通过主机ACL链接进行通信。 连接build立后,build立连接。

请看一下Android文档 。

使用蓝牙API,Android应用程序可以执行以下操作:

  • 扫描其他蓝牙设备
  • 查询本地蓝牙适配器是否配对蓝牙设备
  • build立RFCOMM渠道
  • 通过服务发现连接到其他设备
  • 从其他设备传输数据
  • pipe理多个连接

你可以看看这里(这不是一个解决scheme,但这里的想法)

示例多客户端与谷歌聊天的例子

你必须改变/做什么:

  • 单独的服务器和客户端在不同的类中

  • 对于客户端,您需要一个对象来pipe理一个连接线程和连接的线程

  • 对于服务器,您需要一个对象来pipe理每个客户端的一个监听线程,以及每个客户端一个连接的线程

  • 服务器在每个UUID上打开一个监听线程(每个客户端一个)

  • 每个客户端尝试连接到每个uuid(uuid已经采取将会失败的连接=>先到先服务)

任何问题 ?