#AndroidTip Verificar si tenemos conexión a Internet en Android

Para verificar si estamos conectados a Internet, lo primero que tenemos que hacer es agregar el permiso ACCESS_NETWORK_STATE a nuestro archivo AndroidManifest.xml para así consultar el estado de nuestra conexión.

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

Luego creamos una función que a través del contexto en el cuál estemos trabajando verifique en el servicio CONNECTIVITY_SERVICE si estamos conectados o conectándonos. Esta función es estática para que pueda ser accesada desde cualquier parte sin necesidad te pertenecer a una instancia y debería estar ubicada en una clase Singleton o similar.

static public boolean isNetworkingAvailable(Context c){
    ConnectivityManager cm = 
        (ConnectivityManager)c.getSystemService(Context.CONNECTIVITY_SERVICE);
 
    NetworkInfo activeNetwork = cm.getActiveNetworkInfo();
 
    return activeNetwork != null && 
        activeNetwork.isConnectedOrConnecting();
}

Eventualmente si estamos conectados a una red que no tiene salida a Internet, podemos capturar el evento al momento de realizar algún request. Pero siempre deberíamos consultar primero con este servicio.

Comenta este post