有没有办法检测当前的 Windows 8 设备是通过WiFi/LAN 还是通过 3G 连接使用 Internet?我们必须根据网络速度在我们的应用程序中提供不同的图像和视频质量。
到目前为止,我只检查了ConnectionCost和NetworkAdapter API,但我不确定这是否是我想要的:http:
//msdn.microsoft.com/en-us/library/windows/apps/xaml/hh700381 .aspx
有没有办法检测当前的 Windows 8 设备是通过WiFi/LAN 还是通过 3G 连接使用 Internet?我们必须根据网络速度在我们的应用程序中提供不同的图像和视频质量。
到目前为止,我只检查了ConnectionCost和NetworkAdapter API,但我不确定这是否是我想要的:http:
//msdn.microsoft.com/en-us/library/windows/apps/xaml/hh700381 .aspx
您可以找到带有NetworkAdapter
类的网络类型。它有属性IanaInterfaceType。要检查所有 IANA 接口,请转到此处
var profile = Windows.Networking.Connectivity.NetworkInformation.GetInternetConnectionProfile();
var interfaceType = profile.NetworkAdapter.IanaInterfaceType;
// 71 is WiFi & 6 is Ethernet(LAN)
if (interfaceType == 71 || interfaceType == 6)
{
//TODO:
}
// 243 & 244 is 3G/Mobile
else if (interfaceType == 243 || interfaceType == 244)
{
//TODO:
}
和其他网络 API 可以帮助您解决方案NetworkInformation
。ConnectionCost
它是否缺少您特定应用程序所需的某些功能?
Kraig Brockschmidt 在他的博客上有一个很好的网络连接测试实现,这可能是您正在寻找的。