Если вы используете подключение к интернету в вашем Android-приложении, то важно проверить подключение к Интернету перед выполнением запросов к серверу. В этом уроке мы научимся проверять подключен смартфон к интернету или нет.
Подготовка
Установим в манифесте разрешение на проверку интернета:
<uses-permission android:name="android.permission.INTERNET"> <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE">
Проверяем
Метод isOnline() проверяет подключение к интернету и возвращает boolean:
public boolean isOnline() { ConnectivityManager cm = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE); NetworkInfo netInfo = cm.getActiveNetworkInfo(); return netInfo != null && netInfo.isConnectedOrConnecting(); }
Некоторые особенности
1) Если смартфон подключен к Wi-Fi, то метод вернет true. Даже если интернет не оплачен или из роутера выдернут шнур, то метод все равно вернет true.
2) Если смартфон подключен к мобильной сети, но интернет не оплачен, то метод вернет true.