Wi-Fi与蓝牙对等连接

时间:2016-03-29 06:22:46

标签: android bluetooth wifi

我正在android中为一个教育项目开发一个p2p应用程序,我希望在其中形成附近学生的Android手机组,并在大学校园内交换传感器数据。

现在有一些注意事项:

  1. 设备会在发现连接和交换数据后自动发现彼此。
  2. 这个过程长时间运行,每天可能需要4-8个小时。 (定期感知数据和交换的过程)
  3. 现在可以使用蓝牙或WiFi形成p2p组(非Here are some results,基于WiFi的简单UDP数据包,考虑到手机连接在校园WiFi上。)

    在这种情况下,在可靠性,电话的功率使用,可扩展性以及您可以建议的任何其他方面,使用蓝牙和WiFi的优缺点是什么。

3 个答案:

答案 0 :(得分:7)

在其他答案和输入中,我会添加这个答案。

首先,在我们选择WiFi或蓝牙之前,我们需要找出这两种技术之间的区别。

我制作了比较图表,其中涵盖了您可能需要的有关项目的一些重要信息。

enter image description here

  

注意:有蓝牙和WiFi的不同版本,此图表代表标准蓝牙的一般图片,   蓝牙v4和WiFi。始终建议参考制造   每项技术的规范。

从图表中我们可以得出结论,蓝牙的功耗低于WiFi,但另一方面,WiFi的带宽比蓝牙更多。

范围一般只是近似,很多事情影响范围如人体,障碍物,位置(内部或外部),如果在里面;建筑物内部使用的结构类型和材料,来自其他来源和设备的噪音等。

(*)关于可扩展性,我测试了WiFi和蓝牙v4,这两个系统最多有8个设备,其中一个是主机(组所有者,服务器)设备,另外7个是访客(客户端)。见下图。

enter image description here

关于可靠性,蓝牙v4我有一些时间连接问题,但是当它工作时,每件事都很好。

  

注意:蓝牙v4与旧版本的蓝牙不兼容,因此如果您的主机是蓝牙v4,则所有其他客户端   应该有蓝牙v4,反之亦然。

所以我不会说哪一个是最好的,但如果你需要更长的电池寿命和轻量级数据通信而不是蓝牙。无论是蓝牙还是WiFi,你都可能需要从蓝牙开始测试它,如果你对它感到满意而不是保留它,否则切换到WiFi。

如果您想构建自己的代码,我之前使用的代码示例用于另一项大学研究project。它基于8个电话(主机和客户端),如上图所示,我们收集传感器信息并使用蓝牙4连接将其发送到主机电话。我们使用的源代码可以找到here。同一个项目有WiFi和其他类型的连接。

Android官方google文档包含有关WiFi点对点连接的一些信息和代码示例,您也可以按照code的示例进行操作。

关于收集传感器数据并将其发送到一台设备。您可以添加一个方法,开始收集传感器或任何数据,并在连接成功建立后,而不是开始将其发送到其他设备。

正如其他人所说,https://developers.google.com/nearby也是一种方法。

答案 1 :(得分:3)

由于您可以依赖校园Wifi,我肯定会在我的应用程序中使用Google Nearby APIs的实现,因为它是为此类用例而设计的......

它的工作方式可以回答你的问题:它为你提供了所有重要的东西,包括选择wifi或蓝牙以获得更好的性能......

答案 2 :(得分:2)

Google Nearby绝对是个不错的选择。在直接使用WiFi或蓝牙时,您不必解决所有问题。但Google Nearby仅在两台设备都在线并启用其屏幕时才有效。有关附近的更为重要的评论,请查看http://blog.p2pkit.io/how-google-nearby-really-works-and-what-else-it-does

如果您不能接受这些限制,则应该查看其他框架,例如http://www.p2pkit.io

免责声明:我为Uepaa工作,为Android和iOS开发p2pkit。