10

我想在两个安卓设备之间通过热点交换数据。我试图正确连接。

第一个。我创建了便携式热点:

网络 SSID - my_hotspot
安全性 - WPA PSK
密码 - 密码

第二。我正在尝试在应用程序启动时进行连接。这是我的代码

    mWifiManager = (WifiManager) this.getSystemService(Context.WIFI_SERVICE);

    WifiConfiguration conf = new WifiConfiguration();
    conf.SSID = "\"" + networkSSID + "\"";   
    conf.wepKeys[0] = "\"" + networkPass + "\""; 
    conf.wepTxKeyIndex = 0;
    conf.allowedGroupCiphers.set(WifiConfiguration.GroupCipher.WEP40); 
    conf.preSharedKey = "\""+ networkPass +"\"";
    conf.allowedKeyManagement.set(WifiConfiguration.KeyMgmt.WPA_PSK);
    
    int res = mWifiManager.addNetwork(conf);
    boolean b = setWifiApEnabled(null, true);

我认为它是不成功的。然后我正在尝试通过套接字发送数据。我从JavaCodeGeeks学到了东西。我配置了 SERVER_IP 192.168.49.1,SERVER_PORT:8888。

如何使用热点在两个 Android 设备之间正确通信?

提前致谢。

4

1 回答 1

3

为什么不使用 Wi-Fi Direct?它是一个 p2p 协议。您可以在两个 Android 设备之间共享数据,而无需任何热点。它使用 android.net.wifi.p2p 包。

Wi-Fi 点对点 (P2P) 允许具有适当硬件的 Android 4.0(API 级别 14)或更高版本的设备通过 Wi-Fi 直接相互连接,而无需中间接入点(Android 的 Wi-Fi P2P 框架符合Wi-Fi 联盟的 Wi-Fi Direct™ 认证计划)。使用这些 API,您可以在每个设备都支持 Wi-Fi P2P 时发现并连接到其他设备,然后通过比蓝牙连接长得多的距离通过快速连接进行通信。这对于在用户之间共享数据的应用程序很有用,例如多人游戏或照片共享应用程序。

您可以在 Android 开发者网站上找到有关此技术的更多信息。以下是一些有用的链接:

安卓 Wi-Fi p2p

android.net.wifi.p2p 包

创建应用程序

于 2014-02-26T15:00:32.113 回答