Windows 10 UWP - detect if the current internet connection is Wifi or Cellular?

人盡茶涼 提交于 2019-12-17 15:43:24

问题


In Windows 10 UWP app how do I detect if the current internet connection is Wifi or Cellular?


回答1:


In UWP you can check network connectivity using the IsWlanConnectionProfile or IsWwanConnectionProfile properties.

An example would be:

var temp = Windows.Networking.Connectivity.NetworkInformation.GetInternetConnectionProfile();

if (temp.IsWlanConnectionProfile)
{
     // its wireless
}else if (temp.IsWwanConnectionProfile)
{
     // its mobile
}

I hope this helps.




回答2:


Other than just getting the connectivity (that others have mentioned) you can also handle metered connections better.

How to manage metered network cost constraints

switch (connectionCost.NetworkCostType)
{
    case NetworkCostType.Unrestricted:
        //
        break;
    case NetworkCostType.Fixed:
        //
        break;
    case NetworkCostType.Variable:
        //
        break;
    case NetworkCostType.Unknown:
        //
        break;
    default:
        //
        break;
}

See the networking demo at GitHub.

if (connectionCost.Roaming || connectionCost.OverDataLimit)
{
    Cost = NetworkCost.OptIn;
    Reason = connectionCost.Roaming
        ? "Connection is roaming; using the connection may result in additional charge."
        : "Connection has exceeded the usage cap limit.";
}
else if (connectionCost.NetworkCostType == NetworkCostType.Fixed
    || connectionCost.NetworkCostType == NetworkCostType.Variable)
{
    Cost = NetworkCost.Conservative;
    Reason = connectionCost.NetworkCostType == NetworkCostType.Fixed
        ? "Connection has limited allowed usage."
        : "Connection is charged based on usage. ";
}
else
{
    Cost = NetworkCost.Normal;
    Reason = connectionCost.NetworkCostType == NetworkCostType.Unknown
        ? "Connection is unknown"
        : "Connection cost is unrestricted";
}


来源:https://stackoverflow.com/questions/32845625/windows-10-uwp-detect-if-the-current-internet-connection-is-wifi-or-cellular

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!