android - 是否可以通过 wifi 在 2 个 android 设备之间交换消息?

标签 android bluetooth wifi adhoc android-wifi

我目前正在为使用 Android 的移动设备创建一个应用程序,它应该能够通过 wifi 和蓝牙等本地方式发送和接收消息。在对其进行研究后,我发现 Android 没有本地 wifi ad hoc 功能,实现该功能的唯一方法是通过对设备进行 root 并修补 wpa_suplicant 和其他一些并非对所有设备都通用的类似方法.

我要实现的目标的概要:

用于扫描附近设备并尝试自动连接到它们的 Android 应用程序。如果另一台设备也安装了这个应用程序,那么它会自动接受它收到的任何连接请求,当连接建立时,它会发回一条消息,确保它安装了这个应用程序,这样两者就可以自动开始交换消息,而用户不会不必实时允许/拒绝任何发送/接收。

我的问题是:

  1. 有没有办法在 2 个 android 之间通过 wifi 发送消息 不使用互联网的设备?
  2. 由于不支持 Ad Hoc,是否有其他选择?
  3. 如果 2 的答案是否定的,那么是否有可能做出其中之一 设备作为接入点,以便其他设备可以连接到它,并且 反之亦然。
  4. 至于蓝牙,是否可以跳过或自动执行允许/拒绝 弹出传入连接和配对过程?

如果你能给我一个答案和/或任何建议,我会很高兴。

最佳答案

使用 Wifi Direct (P2P),您将能够在没有路由器/接入点的情况下通过 wifi 在两个设备之间进行通信在 Android 4.0 中。

否则,我认为您无法通过 Wifi 实现此目的(蓝牙将是下一个最佳选择)。从 2.2 开始,您可以将手机设置为 Wifi 接入点(用于绑定(bind)设备的网络连接),但在此期间,Wifi 硬件无法正常使用。如果您有 3 台设备,它就可以工作(1 个 AP,2 个连接到它)。

这是为了持续连接,还是一次性小额交付?例如,如果你想传输一个 URL,你可以使用 NFC(Android Beam 在 Android 4.0 中集成了这种类型的共享,但可以在 2.3 中实现)。

关于android - 是否可以通过 wifi 在 2 个 android 设备之间交换消息?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7229759/

相关文章:

Android + 以编程方式通过蓝牙配对设备

android - 手机充当灯塔

ios - iPhone 中的蓝牙编程

android - 保持 wifi radio 打开的不同可能性?

android - parse.com 可以替代 XMPP 服务器吗

android - Whatsapp 身份验证如何工作?

android - 如何在本地最好地保存应用内购买状态?

Android:从通知中恢复上次 Activity

iOS:如何查询WiFi状态

android-studio - 如何使用android SDK计算我的wifi和3g的信号强度?