comprobar conexion de internet en android jonathanmelgoza

Comprobar la Conexion de Internet en Android | Wifi y Datos

En este Articulo veremos como comprobar la Conexion de Internet en Android antes de realizar determinada accion que necesite esta conexion, analizaremos como testear al conexion tanto Wifi como de Datos y mostrar un mensaje de advertencia. Para este Ejemplo haremos uso de la clase ConnectivityManager de Android y realizaremos un pequeño ejemplo en el que obtendremos una lista de paises de un webservice pero para lo cual antes necesitaremos comprobar la conexion a Internet en nuestro dispositivo android.

Escenario

Como dijimos antes haremos aqui un sencillo ejemplo de una app que realiza una accion en internet para lo cual necesitaremos comprobar que existe conexion a internet en nuestro dispositivo, para lo cual haremos uso de la clase ConnectivityManager de android y mostraremos un alertDialog para avisar al usuario, por supuesto tu quedras cambiar esta parte por la accion que desees cuando no se tenga con conexion a internet.

Lo primero que tendriamos seria un codigo como este:

 

donde obtenerCapitales es el metodo que necesita conexion a internet y que queremos comprobar antes si existe determinada conexion.

Despues vemos el codigo del metodo estaConectado

 

donde simplemente seleccionamos la accion a realizar en determinado caso ( nosotros mostramos un alertDialog :yum: )

Testeando Conexion Wifi en Android

Para comprobar la conexion a Internet mediante Wifi el metodo conectadoWifi seria asi

 

Testeando Conexion de Datos en Android

El metodo conectadoRedMovil comprueba la conexion a la RedMovil del dispositivo android

 

Todo el Codigo

 

Resultado


Comprobar la Conexion de Internet en Android 2 Comprobar la Conexion de Internet en Android 2

Comprobar la Conexion de Internet en Android | Wifi y Datos

 

Clic para valorar esta información
[Total: 0 Promedio: 0]

13 comentarios en “Comprobar la Conexion de Internet en Android | Wifi y Datos”

  1. Buenas tardes amigo te escribo para preguntarte si te puede hacer esto en app inventor soy principiante haber en que me puedes ayudar gracias…

    Responder
  2. Que tal amigo tengo un problema en esta parte del codigo:
    alertDialog.setButton(«OK», new DialogInterface.OnClickListener() {
    @Override
    public void onClick(DialogInterface dialog, int which) {
    }
    });
    Me sale cannot resolve method setbutton no entiendo porque ayudame pls

    Responder
  3. Pueden intentar verificar su conexión, mediante la verificación de una página sencilla, ejemplo un .PHP que les devuelva la palabra «conectado» utilizando un httpurlconnetion
    ej:
    URL url = new URL(«http://www.midominio.com/respuesta.php»);
    HttpURLConnection urlConnection = (HttpURLConnection) url.openConnection();
    try {
    InputStream in = new BufferedInputStream(urlConnection.getInputStream());
    readStream(in);
    finally {
    urlConnection.disconnect();
    }
    }

    Pueden combinar, esta información con la de verificación de conexión y con ambas lograr algo óptimo

    aqui les dejo la info:

    http://developer.android.com/reference/java/net/HttpURLConnection.html

    Responder
  4. Seria bueno implementar una consulta a un algún web service, por ejemplo del clima y si este arroja datos, (response) podríamos validar que ya existe a su vez, Internet.

    saludos.

    Responder
  5. Hola Jonathan, estuve probando tu ejemplo en una aplicacion, pero solo me comprueba que este conectado a una red, mas no que tengo internet, no se si ya hayas lidiado con este problema, te agradeceria pudieras ayudarme. Un saludo.

    Responder
    • me pasa lo mismo… todos los codigos que he encontrado en internet solo comprueban que esté conectado a la red (wifi) pero no comprueba si esa red está conectado a internet o no… si alguien tiene alguna solucion ojalá la comparta.

      gracias.

    • Lo que se podría hacer es comprobar el status http del envió de algún dato
      por ejemplo si cuando quieres validar un login teniendo conexión a una red mas no salida a internet pues si no recibes ningún código 201 o 203 o 404 entonces es porque no se llego a salir a internet.

Deja un comentario