0
我正嘗試連接到應用程序啓動時無法訪問互聯網的WiFi熱點(開放網絡)。連接到沒有互聯網的WiFi
但是,有另一個保存的互聯網Wifi。當我打開Wifi時,它會自動連接到具有Internet訪問權限的那個。
我一直在試圖解決這個問題,因爲一個星期了!但沒有任何工作。事實上,我的代碼與網絡斷開連接,但沒有連接到我想要的網絡。這沒有意義。
在WiFi設置活動中,它顯示「未檢測到Internet,不會自動重新連接」。
private boolean tryConnect(WifiManager wifiManager, List<ScanResult> scanResults) {
for (ScanResult scanResult : scanResults) {
Log.d(TAG, "SCAN-RESULT: " + scanResult);
if (scanResult.SSID.toLowerCase().contains(MainActivity.ARDRONE2_HOTSPOT_NAME) && WifiUtilities.getScanResultSecurity(scanResult) == WifiUtilities.NetworkSecurity.OPEN) {
Log.d(TAG, "Trying Connecting to ARDrone2");
WifiConfiguration wifiConfiguration = new WifiConfiguration();
wifiConfiguration.SSID = String.format("\"%s\"", scanResult.SSID);
wifiConfiguration.allowedKeyManagement.set(WifiConfiguration.KeyMgmt.NONE);
wifiConfiguration.priority = Integer.MAX_VALUE - 1;
List<WifiConfiguration> wifiConfigList = wifiManager.getConfiguredNetworks();
int networkId = -1;
for (WifiConfiguration wifiConfig : wifiConfigList) {
if (wifiConfig != null) {
if (wifiConfig.SSID.equals("\"" + scanResult.SSID + "\"")) {
networkId = wifiConfig.networkId;
} else {
wifiManager.disableNetwork(wifiConfig.networkId);
}
}
}
if (networkId == -1) {
networkId = wifiManager.addNetwork(wifiConfiguration);
} else {
networkId = wifiManager.updateNetwork(wifiConfiguration);;
}
wifiManager.saveConfiguration();
wifiManager.disconnect();
wifiManager.enableNetwork(networkId, true);
wifiManager.reconnect();
return true;
}
}
return false;
}
調試日誌:「嘗試連接到ARDrone2」出現,但它沒有連接!
在這裏也有類似的問題Android, automatically connecting to wifi networks that have no internet access,但沒有提供任何意見或答案。
爲什麼投票???! – user640853