Как проверить связь с Интернетом в Android?

Аватар пользователя Михайлов Александр
Опубликовано пн, 12/12/2011 - 20:24 пользователем Михайлов Александр

Не многие знают, как проверять связь с Интернетом в ОС android. Представьте, вы ждёте важное письмо, чтобы зайти на сервер электронной почты, необходимо установить соединение с Интернетом. Сегодня я расскажу как при помощи кодов можно узнать полную информацию соединения в Android.

Итак, вот что я могу вам посоветовать для проверки связи с Интернетом.

 

import android.net.ConnectivityManager;

import android.net.NetworkInfo;

import android.os.Bundle;

import android.content.Context;

import android.util.Log;

 

public boolean isOnline() {

    ConnectivityManager cm = (ConnectivityManager)getSystemService(Context.CONNECTIVITY_SERVICE);

    NetworkInfo nInfo = cm.getActiveNetworkInfo();

    if (nInfo != null && nInfo.isConnected()) {

        Log.v("status", "ONLINE");

        return true;

    }

    else {

        Log.v("status", "OFFLINE");

        return false;

    }

}

 

Данный код не будет корректно работать без разрешения, которое устанавливается в манифесте.
Кусок из манифеста, отвечающий за корректность работы.

 

<uses-permission android:name="android.permission.INTERNET"></uses-permission>

<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"></uses-permission>

 

P.S. Для тех, кто пишет и активно тестирует приложения под эмулятором Android:

для того, чтобы увидеть, что подключение отсутствует, нужно включить режим в самолете или нажать клавишу F8, иначе код постоянно будет возвращать true (есть подключение). 

Партнёр

Сейчас на сайте

Пользователей онлайн: 0.