Pregunta

Quiero descargar algunos datos si el usuario se encuentra actualmente en una conexión wifi pero si el usuario está conectado a través de datos celulares (por ejemplo, 3G) No quiero hacer nada para evitar cargos de datos para el usuario.

Con el fin de hacer esto, necesito saber el tipo de conexión actual. ¿Hay alguna API que me daría esta información? (Esta es una aplicación nativa.)

Gracias.

¿Fue útil?

Solución

Tal vez usted encontrará este artículo y la muestra de código de utilidad.

Otra opción para verificar el estado de WLAN sería mediante la lectura del Registro siguiente valor:

HKEY_LOCAL_MACHINE \ System \ Estado \ Hardware \ Wifi

al menos según este post (que supongo que se puede adaptar fácilmente a código nativo). Si WLAN está encendido, supongo que se puede dejar con seguridad los datos de usuario de descarga.

Editar : los valores obtenidos parecen corresponder a la siguiente WLAN-status:

  

0 - apagado

     

1 o 5 - listo

     

11 o 15 - conexión

     

19 o 23 - conectado

No estoy 100% seguro de si cuando se conecta WLAN, no serán utilizados aquí cualquier otra servicios de datos como 3G. Tal vez esto depende de los ajustes de conexión-. Sin embargo, cuando estoy usando mi dispositivo, he observado que si WLAN está conectado, "toma el mando". Si tiene la posibilidad, debe verificar esto utilizando diferentes dispositivos, tal vez con diferentes operadores.

Buena suerte.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top