在Android Studio 2.1.1上编写的代码赢得了';Android Studio 2.2.3不起作用,奇怪的是它赢了';也不会产生任何错误
我制作了一个wifi应用程序,可以扫描可用网络并连接到特定网络。我使用了AndroidStudio版本2.1.1,但相同的代码在AndroidStudio版本2.2.3上不起作用,并且不会给出任何错误。我搜索了很多,但找不到解决方案。请帮忙 以下是不起作用的方法在Android Studio 2.1.1上编写的代码赢得了';Android Studio 2.2.3不起作用,奇怪的是它赢了';也不会产生任何错误,android,Android,我制作了一个wifi应用程序,可以扫描可用网络并连接到特定网络。我使用了AndroidStudio版本2.1.1,但相同的代码在AndroidStudio版本2.2.3上不起作用,并且不会给出任何错误。我搜索了很多,但找不到解决方案。请帮忙 以下是不起作用的方法 public int connectToWifi(String networkSSID, String networkPasskey) { for (ScanResult result : wifiList) {
public int connectToWifi(String networkSSID, String networkPasskey) {
for (ScanResult result : wifiList) {
if (result.SSID.equals(networkSSID)) {
String securityMode = getScanResultSecurity(result);
WifiConfiguration wifiConfiguration = createAPConfiguration(networkSSID, networkPasskey, securityMode);
int res = wifiManager.addNetwork(wifiConfiguration);
Log.d(TAG, "# addNetwork returned " + res);
wifiManager.disconnect();
boolean b = wifiManager.enableNetwork(res, true);
Log.d(TAG, "# enableNetwork returned " + b);
wifiManager.reconnect();
boolean changeHappen = wifiManager.saveConfiguration();
if (res != -1 && changeHappen) {
registerReceiver(new WifiReciever(),
new IntentFilter(WifiManager.NETWORK_STATE_CHANGED_ACTION));
Log.d(TAG, "# Change happen");
} else {
Log.d(TAG, "Wrong Password");
}
return res;
}
}
return -1;
}
private WifiConfiguration createAPConfiguration(String networkSSID, String networkPasskey, String securityMode) {
WifiConfiguration wifiConfiguration = new WifiConfiguration();
wifiConfiguration.SSID = "\"" + networkSSID + "\"";
if (securityMode.equalsIgnoreCase("OPEN")) {
wifiConfiguration.allowedKeyManagement.set(WifiConfiguration.KeyMgmt.NONE);
} else if (securityMode.equalsIgnoreCase("WEP")) {
wifiConfiguration.wepKeys[0] = "\"" + networkPasskey + "\"";
wifiConfiguration.wepTxKeyIndex = 0;
wifiConfiguration.allowedKeyManagement.set(WifiConfiguration.KeyMgmt.NONE);
wifiConfiguration.allowedGroupCiphers.set(WifiConfiguration.GroupCipher.WEP40);
} else if (securityMode.equalsIgnoreCase("PSK")) {
wifiConfiguration.preSharedKey = "\"" + networkPasskey + "\"";
wifiConfiguration.hiddenSSID = true;
wifiConfiguration.status = WifiConfiguration.Status.ENABLED;
wifiConfiguration.allowedGroupCiphers.set(WifiConfiguration.GroupCipher.TKIP);
wifiConfiguration.allowedGroupCiphers.set(WifiConfiguration.GroupCipher.CCMP);
wifiConfiguration.allowedKeyManagement.set(WifiConfiguration.KeyMgmt.WPA_PSK);
wifiConfiguration.allowedPairwiseCiphers.set(WifiConfiguration.PairwiseCipher.TKIP);
wifiConfiguration.allowedPairwiseCiphers.set(WifiConfiguration.PairwiseCipher.CCMP);
wifiConfiguration.allowedProtocols.set(WifiConfiguration.Protocol.RSN);
wifiConfiguration.allowedProtocols.set(WifiConfiguration.Protocol.WPA);
} else {
Log.i(TAG, "# Unsupported security mode: " + securityMode);
return null;
}
return wifiConfiguration;
}
public String getScanResultSecurity(ScanResult scanResult) {
final String cap = scanResult.capabilities;
final String[] securityModes = {"WEP", "PSK", "EAP"};
for (int i = securityModes.length - 1; i >= 0; i--) {
if (cap.contains(securityModes[i])) {
return securityModes[i];
}
}
return "OPEN";
}
`Android Studio只是一个IDE。它不应该影响您的代码。你可能做了别的事。。。你能把你的密码寄出去吗?应用程序崩溃了?你试过卸载并重新安装它吗?应用程序不会崩溃,是的,我多次重新安装应用程序使用调试器,设置一些断点。或者在一个