Comprobar si existe conexión a Intenet en una aplicación Android

agosto 29, 2012

Si estamos desarrollando una aplicación Android que se comunica con recursos externos en Internet, necesitaremos comprobar si el dispositivo en el que está instalada la aplicación tiene conexión a Internet en ese momento para poder realizar las consultas.

Con esta función podemos comprobar si existe conexión a Internet desde la aplicación Android. Podemos utilizarla para mostrar una advertencia al usuario en caso de que no haya conexión a Internet.

public boolean isOnline() {
    ConnectivityManager cm = 
         (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);
    NetworkInfo netInfo = cm.getActiveNetworkInfo();
    if (netInfo != null && netInfo.isConnected()) {
        return true;
    }
    return false;
}

Debemos añadir este permiso al fichero manifest:

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

Tags ; , , , ,

1 comentario

    Danny Nov 11, 2014

    Hola no soy un experto en programación Android pero me parece que la función solo verifica si esta activado el trafico de datos y no si tiene acceso a internet. Podría estar activado el trafico pero sin acceso a internet. Pasa lo mismo con la conexión a wifi, podría estar en una red pero sin conexión a internet. No se si me he explicado, no digo que este mal la función, solo esa pequeña observación.

    Responder

Escribe un comentario

Los comentarios son moderados y se utiliza rel="nofollow" para los enlaces.