¿Cómo puedo saber si mi dispositivo está conectado a la web o no? ¿Cómo puedo detectar la conectividad? ¿Algún código de muestra?¿Cómo puedo verificar si un dispositivo Android está conectado a la web?
Respuesta
En primer lugar, necesita permiso para saber si el dispositivo está conectado a la red o no. Esto tiene que estar en su manifiesto, en el elemento <manifest>
:
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
Después, usted necesita para obtener una referencia a la ConnectivityManager:
ConnectivityManager cm = (ConnectivityManager) Context.getSystemService(Context.CONNECTIVITY_SERVICE);
Desde allí se necesita para obtener un objeto NetworkInfo. Para la mayoría, esto significará utilizando ConnectivityManager. getActiveNetworkInfo():
NetworkInfo ni = cm.getActiveNetworkInfo();
if (ni == null) {
// There are no active networks.
return false;
}
A partir de ahí, sólo tiene que utilizar uno de los métodos de NetworkInfo para determinar si el dispositivo está conectado a internet:
boolean isConnected = ni.isConnected();
recibo una excepción de puntero nulo en este comunicado: boolean isConnected = ni.isConnected(); ¿Por qué? –
Sí ... ¡yo también! – xpepermint
@Maxood, significa que no hay redes activas. En otras palabras, el dispositivo no está conectado a la web. Cambiaré el código. –
http://developer.android.com/reference/android/net/ConnectivityManager.html - CONNECTIVITY_ACTION
En primer lugar, es necesario permiso para saber si el dispositivo está conectado a la web o no. Esto tiene que estar en su manifiesto, en el elemento:
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
continuación
ConnectivityManager connec = (ConnectivityManager)getSystemService(Context.CONNECTIVITY_SERVICE);
if (connec != null && (
(connec.getNetworkInfo(ConnectivityManager.TYPE_WIFI).getState() == NetworkInfo.State.CONNECTED) ||
(connec.getNetworkInfo(ConnectivityManager.TYPE_MOBILE).getState() == NetworkInfo.State.CONNECTED))) {
//You are connected, do something online.
} else if (connec != null && (
(connec.getNetworkInfo(ConnectivityManager.TYPE_WIFI).getState() == NetworkInfo.State.DISCONNECTED) ||
(connec.getNetworkInfo(ConnectivityManager.TYPE_MOBILE).getState() == NetworkInfo.State.DISCONNECTED))) {
//Not connected.
Toast.makeText(getApplicationContext(), "You must be connected to the internet", Toast.LENGTH_LONG).show();
}
Añadir este permiso en su archivo AppManifest.xml:
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
El método para comprobar si la red está disponible o no:
boolean isNetworkAvailable() {
ConnectivityManager cm = (ConnectivityManager)context.getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo activeNetwork = cm.getActiveNetworkInfo();
boolean isConnected = activeNetwork != null && activeNetwork.isConnectedOrConnecting();
return isConnected;
}
- 1. Detectando si un auricular está conectado a un dispositivo Android o no.
- 2. ¿Cómo puedo verificar si la tarjeta SIM está disponible en un dispositivo Android?
- 3. ¿Cómo verificar si un socket está conectado/desconectado en C#?
- 4. ¿Cómo saber a qué puerto está conectado un dispositivo USB?
- 5. ¿Detecta si un usuario web está actualmente conectado a Google?
- 6. ¿Cómo verificar si el socket todavía está conectado?
- 7. ¿Cómo verificar si un complemento jQuery UI está conectado a un elemento?
- 8. ¿Cómo puedo verificar si PHP ya está conectado a una base de datos?
- 9. ¿Puedo verificar si el iPhone está acoplado?
- 10. ¿Cómo puedo verificar si el Android Market está instalado en el dispositivo de mi usuario?
- 11. ¿Cómo puedo verificar si un socket está actualmente conectado en Java?
- 12. ¿Cómo puedo verificar si el teléfono Android se está cargando?
- 13. ¿Cómo comprobar si el usuario está conectado a internet wp7?
- 14. ¿Cómo determinar si un dispositivo Android está rooteado programáticamente?
- 15. Cómo verificar si la alarma está configurada
- 16. ¿cómo puedo verificar si un giroscopio está presente en el dispositivo?
- 17. ¿Cómo puedo determinar si un dispositivo USB conectado es una unidad flash USB?
- 18. Registrar la aplicación para iniciar cuando el dispositivo USB está conectado a la PC
- 19. Detecta cuando un dispositivo USB está conectado en C
- 20. Cómo verificar si un usuario está conectado (¿cómo usar correctamente user.is_authenticated)?
- 21. Determinar en script php si está conectado a internet?
- 22. android: ¿cómo puedo verificar, ese dispositivo admite multitouch?
- 23. ¿Cómo puedo verificar si actualmente se está visualizando un UIViewController?
- 24. ¿Cómo puedo verificar si un filehandle está abierto en Perl?
- 25. Cómo verificar si Android "Datos móviles" está en
- 26. Cómo verificar si un DataGridViewCheckBoxCell está marcado
- 27. ¿Cómo puedo verificar si un complemento jQuery está cargado?
- 28. ¿Cómo puedo verificar si un UIView está animando?
- 29. ¿Cómo puedo verificar si un módulo Perl está instalado?
- 30. Enviar datos a un servidor cuando el dispositivo está conectado a Internet
duplicado posible de [comprobar la conexión a Internet Android] (http://stackoverflow.com/questions/9570237/android-check-internet-connection) –