c# - puedo - Windows Phone 8.1: compruebe la conexión a Internet
nokia lumia no se conecta a internet (4)
Lo que quiere es un portal cautivo, que es prácticamente una página a la que los usuarios se conectan, para comprobar si su conexión a Internet funciona, se puede explicar aquí con más detalle.
Estos proyectos de código abierto parecen prometedores:
¡Buena suerte!
¿Cómo puedo saber si el teléfono tiene conexión a Internet? (Ya sea WiFi o Datos)
A veces, el teléfono se conecta a WiFi sin conexión a Internet, como HotSpots. Así que quiero un código para saber si el teléfono se está conectando a internet.
Considere consultar Internet en el hilo de fondo
if (await Task.Run(() =>NetworkInterface.GetIsNetworkAvailable())
{
//Wifi or Cellular
}
else
{
// No internet
}
Simplemente puede intentar:
if (NetworkInformation.GetInternetConnectionProfile() == null)
{
//no connection
}
Como puede ver en esta documentación de msdn: NetworkInformation.GetInternetConnectionProfile
Devolverá nulo si no hay "ningún perfil de conexión con una conexión adecuada"
También puede verificar explicity el nivel de "Acceso a Internet" con esto: NetworkInformation.GetInternetConnectionProfile().GetNetworkConnectivityLevel() == NetworkConnectivityLevel.InternetAccess
Creo que esto funcionará también en la aplicación universal.
El siguiente método funciona para mí simplemente para verificar si el dispositivo está conectado a internet o no, incluso en la aplicación universal de Windows. Después de crear la clase de conexión, puede usarla en cualquier lugar simplemente instanciando esta clase ...
public class Connection
{
public bool CheckInternetAccess()
{
var connectionProfile = NetworkInformation.GetInternetConnectionProfile();
var HasInternetAccess = (connectionProfile != null &&
connectionProfile.GetNetworkConnectivityLevel() ==
NetworkConnectivityLevel.InternetAccess);
return HasInternetAccess;
}
}
Para usar esta clase simplemente ...
Connection objConnection = new Connection();
if(objConnection.CheckInternetAccess()==true)
{
//todo
}
else
{//todo}