Android Wifi 直接多连接 ad-hoc
Posted
技术标签:
【中文标题】Android Wifi 直接多连接 ad-hoc【英文标题】:Android Wifi direct multiple connection ad-hoc 【发布时间】:2011-03-15 21:44:34 【问题描述】:我尝试在许多 android 设备之间创建一个 ad-hoc 网络,但我找不到相关文档。
我认为 Wifi direct 可以满足我的需求,但是否可以在一台设备上进行多个连接?我看到我们可以做一个充当接入点的设备并与许多设备通信,但是我们可以从一个客户端设备通信到两个接入点设备吗?
例如,我有 3 个设备:A -> B -> C
“A”设备需要与“C”设备通信,但距离太远,所以我想在 A&B 之间建立 ad-hoc wifi direct connection,在 B&C 之间建立 ad-hoc wifi direct connection,这样 A 可以与C. 它还应该适用于 3 台以上的设备。
谢谢!
【问题讨论】:
我正在尝试在同一场景中连接三个设备 A->B->C 和 A 想要通过 B 向 C 发送消息。您是否能够在 Android 上使用 WiFi Direct 实现此目的? 【参考方案1】:这里是 Wifi Direct 演示的链接http://developer.android.com/resources/samples/WiFiDirectDemo/index.html
【讨论】:
【参考方案2】:一个月以来,我一直致力于通过 Android 手机建立临时通信。我正在尝试创建一个无需 3G 或接入点即可运行的应用程序。主要思想是让客户端能够近距离传输语音或数据。
有些人实现了几乎相同主题的基本系统。它基本上适用于 Wi-Fi 接入点。因此,您需要一个接入点来建立连接。虽然这不是我想要的,但它可能对其他人有帮助。您可能需要与他们联系以获取更多详细信息。
https://sites.google.com/site/androidwalkietalkie/home
【讨论】:
【参考方案3】:Android 目前不支持 ad-hoc WiFi —— 抱歉!
更新(2019):Android 已经支持 WiFi Direct 有一段时间了,这个答案还没有更新。
你的方案会奏效。只要 B(组所有者)在 A 和 C 的范围内,A 就可以与 C 连接。
有关更多信息,请参阅 Android 的开发者文档:
https://developer.android.com/guide/topics/connectivity/wifip2p
【讨论】:
有了新的 LG Optimus,您可以使用 wifi direct 与其他设备进行通信,请看这里的 engadget 视频:viddler.com/explore/engadget/videos/2313 但我不知道是否可以做一个链式通信 A->B->C->D ... @Hrk:Android 目前也不支持 WiFi Direct。 LG Optimus 可能已经添加了此功能,但您可能无法通过 Android SDK 对其进行操作,并且大多数其他设备都没有。如果您只为 LG Optimus 编写应用程序,请联系 LG 以获取其 WiFi Direct 实施方面的帮助。 冰淇淋三明治,现在支持 WiFi Direct。 WiFi 直连绝不是 ad-hoc 网络。您可以使用 WiFi direct 之类的东西构建自己的,但您不会开箱即用。 @CommonsWare 现在是否可以使用 Wi-Fi P2P 进行链式通信developer.android.com/guide/topics/connectivity/wifip2p.html【参考方案4】:目前只有 Galaxy S 2 支持 Wi-Fi Direct
【讨论】:
【参考方案5】:wifi direct 支持单一界面上的并发托管和客户端功能。这意味着,该设备将充当 AP,允许其他设备作为客户端连接到它,并作为客户端连接到另一个 AP。并且可以通过驱动接口之间的互联网流量来共享互联网连接。 但是,当前在 android 上的 wifi direct 实现是特定于手机的,而不是 andorid sdk 的一部分。因此,它们是否支持并发性并不清楚。此功能不受硬件限制。
【讨论】:
【参考方案6】:Ad hoc wifi 在 Android 中被禁用。你需要问问谷歌他们为什么选择这样做。如果您可以访问允许您安装自定义 Android 映像的设备,您将能够修补 Android 以支持它。或者您可以根您的设备并重新启用 ad hoc Wifi,网络上有很多关于如何在有根的 Android 设备上启用 ad hoc 的解决方案。这是一个软件问题,我所知道的每台 Android 设备上的硬件都支持 ad hoc Wifi。
【讨论】:
感谢您的回答,但即使您根植了您的设备。有可能做我想做的事吗?通过 B 和 C 从 A 到 D 通信? A->B->C->D 是的,但是您需要设置某种形式的路由,这在您的应用程序中最容易。如果数据在应用内的设备之间传递,数据也可以从 A 传递到 B,然后从 B 传递到 C 等。 再次感谢,您告诉我可以在 B 2 上建立活动 wifi 连接(到 A 和 C)? 是的,在 ad hoc 模式下的根电话上。【参考方案7】:The Serval Project,部分基于 WiFi Tether,是我发现此功能的唯一地方。它仍然是 alpha 阶段,但似乎是该领域的先驱。 The wiki 比上面链接的主项目页面更有用,带有安装说明和一些文档。
Serval 可能适合也可能不适合您的需求,但我觉得应该指出的是,在 Android 上,ad-hoc 网络并非不可能。不过,最好等到 Google 开始将其作为标准 API 来实现(如果您相信他们会:))。
【讨论】:
【参考方案8】:嗯,您可能有兴趣查看 AllJoyn。它是用于 android OS 的 qualcoms SDK,它通过创建 adhoc 连接包括 wi-fi 点对点实现。这与 Wi-Fi Direct 相同。
【讨论】:
以上是关于Android Wifi 直接多连接 ad-hoc的主要内容,如果未能解决你的问题,请参考以下文章