如何连接到指定的BSSID?

时间:2017-04-19 08:15:28

标签: android networking wifi bssid

在我的情况下,我想改变AP连接。 在我的环境中,有两个相同的AP名称,但它们的BSSID是不同的。 在Android 6.0之前,我的应用程序运行正常。

在android 6.0中,我选择了两个AP名称之一,android已断开成功,但在Android重新连接后,它始终连接到原始连接。

如何连接到指定的BSSID?

1 个答案:

答案 0 :(得分:0)

您可以通过以下代码将手机连接到特定的BSSID:

WifiManager mWifiManager = (WifiManager) getApplicationContext().getSystemService(Context.WIFI_SERVICE); 
WifiConfiguration mWifiConfiguration = new WifiConfiguration();

mWifiConfiguration.SSID = "\"" + your_SSID + "\"";
mWifiConfiguration.BSSID = your_BSSID;
mWifiConfiguration.preSharedKey = "\"" + your_password + "\"";

mWifiConfiguration.status = WifiConfiguration.Status.ENABLED;
mWifiConfiguration.priority = 99999;
int myNetworkId = mWifiManager.addNetwork(mWifiConfiguration);

mWifiManager.disconnect();
mWifiManager.updateNetwork(mWifiConfiguration);
mWifiManager.enableNetwork(myNetworkId, true);
mWifiManager.reconnect();