NetworkInfo.isConnected () devuelve true pero no hay conexión

Utilizo la respuesta del gar de esta publicación de StackOverflow para comprobar la disponibilidad de la conexión a internet. Pero, no estoy seguro de si funciona correctamente. Si desactivo WiFi y conexión de datos móviles y ejecuto la aplicación, NetworkInfo.isConnected() devuelve true cuando no hay conexión a Internet disponible.

¿Qué pasa? Si enciendo el modo avión, se dice correctamente que no hay conexión.

Por desgracia, no hay manera de determinar si usted tiene una conexión a Internet con la actual API de Android . Sólo puede determinar si un adaptador (WiFi, 3G, LTE, etc) está conectado a un enrutador.

Dicho esto, puede implementar algo que pings un dominio conocido (www.google.com)? Para determinar en su conexión es válido, pero que llevará tiempo (un segundo o más en una mala conexión).

  • Deshabilitar / habilitar NETWORK_PROVIDER en Android?
  • Impedir que WebView cargue la URL en Android (React Native)
  • Iniciar manualmente la conexión 3G en Android y mantenerla activada
  • ¿Cómo puedo probar la aplicación de Android para los errores de red?
  • Unity3d: Actividad de red de fondo y Unity Run Loop
  • ¿Cómo obtener el uso actual de la red de la aplicación (o en total), incluso en Android N?
  • Programe la opción "Restringir datos de fondo"
  • Determinar dispositivo ip público
  • Cómo obtener la ubicación de la torre actual del operador de red en android
  • Realmente Preferir Red: seleccione mi propio proveedor de red tan pronto como esté disponible (desde el código)
  • Prueba de conexión a Internet de Android
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.