[英]How can I check for 3G, wifi, EDGE, Cellular Networks in Windows Phone 7?
[英]Is there a way to detect what kind of connection I'm using ? WiFi, 3G or Ethernet?
我正在嘗試檢測我連接的網絡連接類型。 是WiFi還是3G? 有沒有辦法使用c#win forms .net 2.0或4.0?
foreach (NetworkInterface adapter in adapters)
{
if (adapter.OperationalStatus == OperationalStatus.Up)
{
if (adapter.NetworkInterfaceType == NetworkInterfaceType.Wireless80211)
{
lblNetworkType.Text = "you are using WiFi";
break;
}
else if (adapter.NetworkInterfaceType == NetworkInterfaceType.Ppp)
{
lblNetworkType.Text = "you are using 3G or ADSL or Dialup";
break;
}
else if (adapter.NetworkInterfaceType == NetworkInterfaceType.Ethernet)
{
lblNetworkType.Text = "you are using Ethernet";
break;
}
}
}
不幸的是,沒有一種“整潔”的方式來做到這一點。 3G連接看起來與ADSL或撥號連接相同(網絡類型為PPP)。
如果您確定自己只使用WiFi / 3G,則可以檢查GetAllNetworkInterfaces提供的NetworkInterface
類中的信息,如果接口類型為PPP, 則將其視為3G。 但正如我所提到的,其他類型的調制解調器連接也是如此。
編輯:你可能有運氣在設備名稱或描述中尋找“3G”,“HSPA”,“HSDPA”,“Dongle”。 但這只是一個“體面的猜測”,而不是絕對肯定。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.