是否可以在 ad-hoc 对等 wifi 模式下设置 Android?例如,我想让一部手机广播一条消息,并让网络中的所有对等方都接收广播,而无需服务器。我想使用 wifi,因为蓝牙范围更有限。
11 回答
尽管 Android 无法找到并连接到 ad-hoc 网络,但它确实可以连接到接入点。因此,作为一种变通方法,您可以使用例如Connectify将您的无线网卡变成一个接入点。
在我们的学士论文中,我和我的朋友目前正在开发一个实现 AODV 协议(适用于移动网络的多跳路由)的 java 库。最终的“产品”包括一种在多个 android 设备上创建/加入 adhoc 网络的简单方法,以及通过库发送和接收消息的接口。不幸的是,每种类型的手机,例如 hero、nexsus one……都有一种依赖于手机的方式来创建一个 adhoc 网络,所以目前我们只支持几部手机)。
这意味着一旦这个项目完成,拥有根手机的人可以通过简单地将库 .jar 文件包含在他们的 android 项目中来实现他们的分布式应用程序(文件共享、游戏等)。
顺便说一句,这都是开源的
您可以将您的 android 设备连接到已知的 ad-hoc 网络。
编辑 /system/etc/wifi/tiwlan.ini
WiFiAdhoc = 1
dot11DesiredSSID = <your_network_ssid>
dot11DesiredBSSType = 0
编辑 /data/misc/wifi/wpa_supplicant.conf
ctrl_interface=tiwlan0
update_config=1
eapol_version=1
ap_scan=2
如果这太简单了,请参阅这些说明。
从API 级别 14开始支持对等 WiFi 网络。
您的答案是 ICS 提供的 Wi-Fi direct。这是Android doc中的解释链接
在 Android 上使用 JmDNS 可能有效:http: //jmdns.sourceforge.net/
那里有大量启用 zeroconf 的机器,因此这不仅可以使用 Android 设备进行发现。
您可以使用Alljoyn框架在 Android 中实现点对点连接。它基于 Ad-hoc 网络和开源。
我不认为它提供了多跳无线数据包路由环境。但是,您可以尝试集成一个简单的路由机制。只需查看Wi-Share即可了解它是如何完成的。
除了 Telmo Marques 回答:我为此使用虚拟路由器。
与 connectify 一样,它会在您的 Windows 8、Windows 7 或 2008 R2 机器上创建一个接入点,但它是开源的。