Android智能手机与其他设备之间的直接WiFi通信

4
我希望在安卓设备和另一种设备(不是另一个安卓智能手机,而是使用c++实现wifi的设备)之间建立通信(通过WIFI)。我已经发现安卓提供了直接wifi以便直接通过wifi与两个安卓设备通信。
如何在安卓设备和另一个c++设备之间进行无网络的wifi通信?特别地,我想让我的应用程序发现任何靠近的设备。所以我必须实现某种服务发现。你们推荐我用什么来实现呢?

一个 C++ 设备实际上什么也不是。如果您正在使用 Windows 主机进行测试,可以查看一些有关 Windows Wi-Fi 直连的指南;对于 Linux,请查看此链接:http://wireless.kernel.org/en/developers/p2p/howto - Iwan Aucamp
1个回答

3
为了使其正常工作,您必须正确配置计算机硬件,并且您的软件必须编写以与此硬件通信。
在以下指南中,建议使用iwpriv应用程序通过处理直接从Wifi适配器驱动程序接收到的p2p信息与硬件通信。如果选择这样做,则需要学习iwpriv的工作原理,并与您的应用程序交互。
指南:http://dishingtech.blogspot.com/2012/01/realtek-wi-fi-direct-programming-guide.html 为了在Android平板电脑上启用Wifi Direct,请按照/samples/android-/中提供的Wifi Direct示例进行操作。该示例允许您直接连接到其他Wifi Direct设备并传输图像。您可以稍微修改此应用程序以满足您的需求,或者如果您的需求与示例有很大不同,则完全重写它。
附带指南(针对Android):http://developer.android.com/training/connect-devices-wirelessly/wifi-direct.html 注意:仍然需要拥有wifi网络才能使这些设备进行通信。

1
这是否意味着Android设备必须连接到网络?通信应该以蓝牙连接的方式进行。顺便说一下,其他设备正在运行“嵌入式Linux”。难道不能简单地在智能手机上实现某种TCP服务器,并让其他设备通过套接字连接到它吗? - Moonlit

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接