我想在两个android设备之间通过热点交换数据。我试着正确连接。
第一。我创建了便携式热点:
网络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设备之间正确通信?
提前谢谢。
为什么不使用Wi-Fi Direct?它是一个p2p协议。您可以在两个Android设备之间共享数据,而无需任何热点。它使用android.net.wwii.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.wwii.p2p包
创建应用程序