2010-06-04 14 views
6

¿Necesito comprobar que el wifi esté encendido o apagado en el teléfono en el tiempo de ejecución?¿Comprobar WiFi y GPS está conectado o no en Android?

si no está conectado, quiero mostrar el diálogo y goto directamente Configuración/Controles inalámbricos para habilitarlo por el usuario.

es para ambos wifi y Gps staus del teléfono. ¿Cómo hacerlo? ¿Qué intento despertar por esto? ¿Alguna idea?

Respuesta

6

Puede usar la clase WifiManager para obtener el estado de Wi-Fi.

Consulte this pregunta para abrir la configuración de Wi-Fi. Y esta pregunta para el estado GPS.

+0

Cómo trazar el estado del GPS? – Praveen

+0

Ver el enlace en mi respuesta editada. – kgiannakakis

11

para comprobar si el dispositivo está conectado a través de móvil o Wi-Fi puede utilizar este código:

ConnectivityManager conMan = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE); 

//mobile 
State mobile = conMan.getNetworkInfo(ConnectivityManager.TYPE_MOBILE).getState(); 

//wifi 
State wifi = conMan.getNetworkInfo(ConnectivityManager.TYPE_WIFI).getState(); 

y luego usarlo como esa:

if (mobile == NetworkInfo.State.CONNECTED || mobile == NetworkInfo.State.CONNECTING) { 
    //mobile 
} else if (wifi == NetworkInfo.State.CONNECTED || wifi == NetworkInfo.State.CONNECTING) { 
    //wifi 
} 
+0

cómo rastrear el estado del GPS? – Praveen

+1

No hay garantía de que el móvil sea networkInfo 0 y el wifi sea información de red 1. Sería mejor verificar el tipo de lo que devuelve 'getActiveNetworkInfo' – haseman

+0

0 aquí significa ConnectivityManager.TYPE_MOBILE, 1 - ConnectivityManager.TYPE_WIFI – Vadim

0
private boolean isNetworkAvailable() { 
    ConnectivityManager connManager = (ConnectivityManager) 
      getSystemService(Context.CONNECTIVITY_SERVICE); 
    NetworkInfo activeNetworkInfo = connManager.getActiveNetworkInfo(); 
    return activeNetworkInfo.isConnected(); 
} 

public void onClick(DialogInterface dialog, int id) { 
    // ... 
    if (isNetworkAvailable()) { 
     t3.setText("The Internet is available"); 
    } else { 
     t3.setText("internet is not available"); 
    } 
} 
0
ConnectivityManager conMan = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE); 

//mobile 
State mobile = conMan.getNetworkInfo(ConnectivityManager.TYPE_MOBILE).getState(); 

//wifi 
State wifi = conMan.getNetworkInfo(ConnectivityManager.TYPE_WIFI).getState(); 
+0

Bienvenido a StackOverflow . Es posible que desee explicar por qué la suya es la mejor respuesta, en lugar de solo publicar un código. Haga clic en el botón "editar" para agregar más explicaciones. –

Cuestiones relacionadas