Android Q, programmatically connect to different WiFi AP for internet

Try calling bindProcessToNetwork() in onAvailable() callback to regain network connectivity, it works fine for me. Connect to network: WifiNetworkSpecifier.Builder builder = new WifiNetworkSpecifier.Builder(); builder.setSsid(“wifi-ap-ssid”); builder.setWpa2Passphrase(“wifi-ap-password”); WifiNetworkSpecifier wifiNetworkSpecifier = builder.build(); NetworkRequest.Builder networkRequestBuilder1 = new NetworkRequest.Builder(); networkRequestBuilder1.addTransportType(NetworkCapabilities.TRANSPORT_WIFI); networkRequestBuilder1.setNetworkSpecifier(wifiNetworkSpecifier); NetworkRequest nr = networkRequestBuilder1.build(); ConnectivityManager cm = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE); ConnectivityManager.NetworkCallback networkCallback = new ConnectivityManager.NetworkCallback() { @Override public void onAvailable(Network … Read more

java.util.zip.ZipException: duplicate entry

Make sure you have the latest build toolds and sdk from the SDK manager. I have converted those jars to Gradle dependencies. build.gradle: // Top-level build file where you can add configuration options common to all sub-projects/modules. buildscript { repositories { jcenter() maven { url ‘https://oss.sonatype.org/content/repositories/ksoap2-android-releases/’ } // <– added for ksoap } dependencies { … Read more