Cuándo comprobar la conexión a Internet en aplicaciones móviles

Me gustaría conocer las recomendaciones y las mejores prácticas para comprobar la conexión a Internet en aplicaciones móviles.

En la mayoría de las aplicaciones que desarrollé con mis compañeros de equipo, comprobamos la conexión a Internet antes de cualquier acción que requiera conexión a Internet. Pero veo muchas aplicaciones que notifica cuando el dispositivo está desconectado de Internet.

Me gustaría tener un entendimiento claro sobre este tema y creo que muchos desarrolladores como yo dudan acerca de cómo hacer este cheque correctamente cuando están desarrollando una aplicación.

Cualquier ayuda o ideas serán apreciadas.

Puede utilizar broadcast reciever para manejar los cambios wifi.

Código del receptor:

private BroadcastReceiver WifiStateChangedReceiver = new BroadcastReceiver() { @Override public void onReceive(Context context, Intent intent) { int extraWifiState = intent.getIntExtra(WifiManager.EXTRA_WIFI_STATE, WifiManager.WIFI_STATE_UNKNOWN); switch (extraWifiState) { case WifiManager.WIFI_STATE_DISABLED: { handler.sendEmptyMessage(DATA_DISCONNECTED); } break; case WifiManager.WIFI_STATE_DISABLING: { } break; case WifiManager.WIFI_STATE_ENABLED: { handler.sendEmptyMessage(DATA_CONNECTED); } break; case WifiManager.WIFI_STATE_ENABLING: { } break; case WifiManager.WIFI_STATE_UNKNOWN: { } break; } } }; 

Registro del receptor:

 this.registerReceiver(this.WifiStateChangedReceiver, new IntentFilter(WifiManager.WIFI_STATE_CHANGED_ACTION)); 

Para comprobar los cambios en la conexión de datos móviles Puede utilizar TelephonyManager:

 PhoneStateListener pslCell = new PhoneStateListener() { @Override public void onDataConnectionStateChanged(int state) { switch (state) { case TelephonyManager.DATA_DISCONNECTED: { handler.sendEmptyMessage(DATA_DISCONNECTED); } break; case TelephonyManager.DATA_SUSPENDED: { handler.sendEmptyMessage(DATA_CONNECTED); } break; } } }; telephonyManager = (TelephonyManager) getSystemService(Context.TELEPHONY_SERVICE); telephonyManager.listen(pslCell, PhoneStateListener.LISTEN_DATA_CONNECTION_STATE); 

Te recomiendo que guarde el estado de la red en variables estáticas. También es necesario comprobar el estado de la red cada vez que se inicie la aplicación.

Está siempre relacionado con el proyecto que estamos haciendo. Si sólo está haciendo la aplicación que sólo requiere conexión a Internet en el momento de cualquier acción, a continuación, comprobar la conexión a Internet antes de perfominar la acción es mejor que se eliminará la sobrecarga de Internet de control de conexión cada vez que prefiero este método

Pero si realmente necesitamos una conexión completa de red cada vez que necesitamos cargar las últimas noticias o aplicaciones de chat que necesitamos notificar en todo momento. Para ello debemos utilizar la Api de Conexión Apropiada de cada Plataforma Móvil Android Proporciona la Conexión BroadCast Recivers Para esto

Depende totalmente de sus requerimientos de Aplicaciones qué tipo de Aplicación es.

A veces:

1) Tenemos que comprobar la conexión a Internet antes de cualquier acción que lo requiera.

2) Revisamos periódicamente la conexión a Internet después de algún intervalo específico definido.

3) Necesitamos una respuesta inmediata del estado de la conexión a Internet, por lo que nuestra aplicación continuamente comprobándola e inmediatamente nos envía el estado de notificación de fallo de Internet o el éxito, por lo que somos capaces de abordar nuestra aplicación en tal escenario.

Espero eso ayude.

  • Cómo instalar .xap phonegap construir en Windows Phone 8?
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.