public class InternetConnectionCheck { public static boolean isInternetAvailable(Context context) { ConnectivityManager cm = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE); NetworkInfo activeNetwork = cm.getActiveNetworkInfo(); if (activeNetwork == null) return false; switch (activeNetwork.getType()) { case ConnectivityManager.TYPE_WIFI: if ((activeNetwork.getState() == NetworkInfo.State.CONNECTED || activeNetwork.getState() == NetworkInfo.State.CONNECTING) && isInternet()) return true; break; case ConnectivityManager.TYPE_MOBILE: if ((activeNetwork.getState() == NetworkInfo.State.CONNECTED || activeNetwork.getState() == NetworkInfo.State.CONNECTING) && isInternet()) return true; break; default: return false; } return false; } private static boolean isInternet() { Runtime runtime = Runtime.getRuntime(); try { Process ipProcess = runtime.exec("/system/bin/ping -c 1 8.8.8.8"); int exitValue = ipProcess.waitFor(); return (exitValue == 0); } catch (IOException | InterruptedException e) { e.printStackTrace(); } return false; } }
Friday, September 29, 2017
check internet is available or not - android studio
Labels:
android