Это мой проект TrustedDevicePlugin. java код в этом плагине, который я настроил Плагин для проверки защищенного Wi-Fi-соединения. Я использую нативный Android код здесь и для этого я использую эти нативные библиотеки. Проблема в том, что эти библиотеки больше не работают одинаково для Android 10 ОС.
Эта функция позволяет проверить, подключен ли мобильный телефон к Wi-Fi или нет, а затем подключен к проверьте, защищено ли соединение паролем или нет, поэтому я проверяю ключи WPA. Но проблема в том, что вся эта функция не работает в случае Android 10, потому что некоторые библиотеки уже устарели, что я использую.
Как я могу продолжить?
public boolean isWeakWifi(){
System.out.println("IsWeakWifi reached");
Log.d(LOG_TAG,"isWeak wifi function reached");
Context context = cordova.getActivity().getApplicationContext();
WifiManager wifi = (WifiManager) context.getSystemService(Context.WIFI_SERVICE);
// WifiManager wifi = (WifiManager)
this.cordova.getActivity().getSystemService(Context.WIFI_SERVICE);
System.out.println("IsWeakWifi wifi "+ wifi.toString());
Log.d (LOG_TAG,"wifi "+ wifi.toString());
List<ScanResult> networkList = wifi.getScanResults();
System.out.println("IsWeakWifi networkList Lenght : "+networkList.size());
Log.d (LOG_TAG,"list length "+ networkList.size());
List<WifiConfiguration> configurationsList = wifi.getConfiguredNetworks();
System.out.println("IsWeakWifi configurationsList Lenght : "+configurationsList.size());
//get current connected SSID for comparison to ScanResult
WifiInfo wi = wifi.getConnectionInfo();
System.out.println("IsWeakWifi wifi info : "+wi.toString());
int currentNetworkId = wi.getNetworkId();
// System.out.println("IsWeakWifi current network ID : "+currentNetworkId.toString());
String currentSSID = wi.getSSID();
System.out.println("IsWeakWifi currentSSID"+ currentSSID);
boolean isSecured = false;
if (configurationsList != null) {
System.out.println("IsWeakWifi inside if configurationsList : ");
System.out.println(" IsWeakWifi list length is not null "+ configurationsList.size());
for (WifiConfiguration configuration : configurationsList)
{
System.out.println("configuration.wepKeys[0] _EAP:::::" + configuration);
System.out.println("IsWeakWifi INSIDE FOR LOOP Configuration NetworkID : "+configuration.networkId);
//check if current connected SSID
if (currentNetworkId==(configuration.networkId)){
System.out.println("IsWeakWifi currentSSID : "+ configuration.wepKeys[0]);
// get capabilities of current connection
// String capabilities = network.capabilities;
if (configuration.allowedKeyManagement.get(KeyMgmt.WPA_PSK)) {
isSecured = true;
System.out.println(" IsWeakWifi WPA_PSK ::::: "+configuration.wepKeys[0]);
}
else if (configuration.allowedKeyManagement.get(KeyMgmt.WPA_EAP) || configuration.allowedKeyManagement.get(KeyMgmt.IEEE8021X)) {
isSecured = true;
System.out.println("IsWeakWifi WPA_EAPppp");
}
else{
System.out.println("configuration.wepKeys[0] _EAP:::::");
isSecured = (configuration.wepKeys[0] != null) ? true : false;
}
// Log.d (LOG_TAG, configuration.SSID + " capabilities : " + capabilities);
// if (capabilities.contains("WPA2") && capabilities.contains("WPA") && capabilities.contains("WEP")) {
// Log.d(LOG_TAG, "Strong Wifi" );
// System.out.println("Strong Wifi "+ networkList.size());
// return true;
// }
}
}
}
else if(configurationsList == null){
System.out.println("INSIDE ELSE configurationList");
}
Log.d(LOG_TAG, "Weak Wifi" );
System.out.println("IsWeakWifi WPA_EAP : "+isSecured);
return isSecured;
}