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).

  • YouTube Player API en android ya no funciona bien
  • Unity3d: Actividad de red de fondo y Unity Run Loop
  • Red social de Android sdk o marco
  • Android AsyncHttpClient, no se puede encontrar la clase de símbolo Header
  • Bluetooth + Android + topología scatternet
  • Android, NSD / DNS-SD: detección no confiable de NsdManager y resolución de IP
  • Iniciar manualmente la conexión 3G en Android y mantenerla activada
  • ¿Cómo determinar la conexión a Internet de Android?
  • Comprobación de la conectividad de red mediante BroadcastReceiver en Android
  • Apache HTTPClient 4.x vs HttpUrlConnection - ¿cuál es más rápido en Android?
  • ¿Es posible monitorear el tráfico HTTP en Android sabiendo qué solicitud genera peticiones?
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.