Enterprise configuration mandates server certificate but validation is not enabled in Android Wi-Fi network suggestion

89 views Asked by At

I am trying to connect to Enterprise network on android using WiFiManager on Android.

@RequiresApi(api = 29)
    public static boolean connectToEnterprise(Context context, String ssid, String identity, String password) {
        WifiManager wifiManager = (WifiManager) context.getSystemService(Context.WIFI_SERVICE);

        WifiEnterpriseConfig enterpriseConfig = new WifiEnterpriseConfig();
        enterpriseConfig.setEapMethod(WifiEnterpriseConfig.Eap.PEAP);
        enterpriseConfig.setPhase2Method(WifiEnterpriseConfig.Phase2.MSCHAPV2);
        enterpriseConfig.setIdentity(identity);
        enterpriseConfig.setPassword(password);
        enterpriseConfig.setCaCertificate(null);


        WifiNetworkSuggestion.Builder builder = new WifiNetworkSuggestion.Builder();
        builder.setSsid(ssid);
        builder.setWpa2EnterpriseConfig(enterpriseConfig);

        List<WifiNetworkSuggestion> wifiSuggestionsList = new ArrayList<>();
        wifiSuggestionsList.add(builder.build());

        int result = wifiManager.addNetworkSuggestions(wifiSuggestionsList);

        if (result == WifiManager.STATUS_NETWORK_SUGGESTIONS_SUCCESS) {
            return true;
        } else {
            return false;
        }

    }

Error

java.lang.IllegalArgumentException: Enterprise configuration mandates server certificate but validation is not enabled.

I expected it to connect to Wifi Network, but it is throwing this error. I don't know how to give sever certificate.

0

There are 0 answers