앱을 시작할 때 인터넷에 연결되지 않은 WiFi 핫스팟 (열린 네트워크)에 연결하려고합니다.인터넷에 연결되지 않은 인터넷에 연결
그러나 인터넷에 저장된 또 다른 Wifi가 있습니다. Wi-Fi를 켤 때 인터넷에 연결된 컴퓨터에 항상 자동으로 연결됩니다.
저는 일주일 동안이 문제를 해결하기 위해 노력해 왔습니다! 그러나 아무것도 작동하지 않습니다. 사실, 내 코드는 인터넷을 통해 네트워크와 연결을 끊지 만 원하는 네트워크에는 연결하지 않습니다. 그것은 말이되지 않습니다.
WiFi 설정 활동에 "인터넷이 감지되지 않았습니다. 자동으로 다시 연결하지 않습니다."라고 표시됩니다.
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