MSDN España

Noticias, avisos, reflexiones... del equipo que hay detrás de MSDN en España... también tendremos alguna que otra firma invitada :)

Windows 8 Tips & Tricks. Detección de red (XAML/C#)

Windows 8 Tips & Tricks. Detección de red (XAML/C#)

[Nota: Este artículo pertenece a nuestra serie de Windows 8 Tips & Tricks]

 

Casi todas las aplicaciones usan Internet de un modo u otro y por tanto es necesario controlar la conexión y detectar desconexiones y reconexiones. En este Tips & Tricks te enseñamos a hacerlo de forma sencilla.

El primer paso es crear un método que compruebe el acceso a Internet verificando que ConnectionProfile no sea null y que NetworkConnectivityLevel sea InternetAccess:

private bool IsInternetAvailable()
{
    var internetProfile = NetworkInformation.GetInternetConnectionProfile();
    return internetProfile != null && 
        internetProfile.GetNetworkConnectivityLevel() ==
        NetworkConnectivityLevel.InternetAccess;
}

También usaremos una variable booleana de clase para controlar la disponibilidad de Internet:

_hayConexion = IsInternetAvailable();

Una vez hecho esto, habría que subscribirse al evento “NetworkStatusChanged”, que se lanzará cada vez que haya un cambio en el estado de la conexión. De este modo podremos monitorizar la red y detectar desconexiones y reconexiones.

NetworkInformation.NetworkStatusChanged += NetworkInformation_NetworkStatusChanged;

Dentro de NetworkInformation_NetworkStatusChanged haremos uso de la variable booleana para controlar el estado y ejecutar el código de conexión o desconexión:

void NetworkInformation_NetworkStatusChanged(object sender)
{
    var now = IsInternetAvailable();
    if (_hayConexion && !now)
    {
        _hayConexion = false;
        //Código a ejecutar cuando se pierda la red
    }
    else if (!_hayConexion && now)
    {
        _hayConexion = true;
        //Código a ejecutar cuando se recupere la red
    }
}

Si tienes alguna duda, recuerda que tienes a tu disposición el foro de desarrollo de aplicaciones para Windows 8 en castellano, donde podrás compartir tus conocimientos con la comunidad de desarrolladores y encontrar ayuda para resolver tus dudas técnicas, y una Introducción al desarrollo de aplicaciones para Windows 8.

También puedes estar al día de todas las novedades a través de nuestros rincones en las redes sociales:

Un saludo,

      Pablo Carballude

 

 

Blog: formulario de comentarios de publicación (CAPTCHA)