Wie kann ich überprüfen, für 3G -, wifi -, EDGE -, Mobilfunk-Netzwerke in Windows Phone 7?
Wie kann ich überprüfen, für 3G -, wifi -, EDGE -, Mobilfunk-Netzwerke in Windows Phone 7 mit C#?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Wie kann ich überprüfen, für 3G -, wifi -, EDGE -, Mobilfunk-Netzwerke in Windows Phone 7 mit C#?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Wenn Sie können, verwenden Sie die Mango (7.1) SDK, und wenn Ihr Szenario beinhaltet die Verwendung von Steckdosen, es gibt einen einfachen Weg, um die NetworkInterfaceType/Subtyp Informationen für die Verbindung, die Sie gerade gemacht:
Keine Notwendigkeit, die NetworkInterface.NetworkInterfaceType Eigenschaft (die notorisch dauert bis zu 30 Sekunden wieder); keine Notwendigkeit, die trigger eine Host-Namensauflösung, nur um festzustellen, dass das Netzwerk-Typ; keine Notwendigkeit zu hören, um Netzwerk-change-events.
Natürlich funktioniert dies am besten in Verbindung mit DeviceNetworkInformation.IsNetworkAvailable oder NetworkInterface.GetIsNetworkAvailable() - ruft sofort zurück, ob Sie in einem Netzwerk oder nicht. Wenn Sie, verbinden Sie die Buchse zuerst und Fragen zu stellen, wenn es angeschlossen ist 🙂
Ein letzter Hinweis: hüten Sie sich vor Mango ' s DeviceNetworkInformation.IsWiFiEnabled - ich dachte, es würde zurückzugeben, ob ich war auf einem wifi-Netzwerk, sondern es gibt an, ob WLAN an-oder ausgeschaltet ist in den Telefon-Einstellungen... nicht super nützlich.
werfen Sie einen Blick auf phoney-tools, Sie haben Klasse PhoneNetworking für diese:
http://wildermuth.com/2011/03/05/Phoney_Tools_Updated_(WP7_Open_Source_Library)
seine open-source können Sie die Quelle code
Als der Mango-Version (beta 2 und RC), diese information ist nun verfügbar, aber es erfordert, dass Sie tatsächlich eine Verbindung herstellen, vermutlich, weil es nicht überprüfen, bis sich was es braucht.
Können Sie entweder führen Sie eine DNS-Auflösung (siehe unten) oder verwenden Sie die
GetCurrentNetworkInterface
WebRequest-Erweiterung-Methode, die wirft eine InvalidOperationException, wenn die Anfrage nicht verbunden noch.Gibt es auch einige Veranstaltungen zu Folgen, die
Microsoft.Telefon.Net.NetworkInformation
namespace, aber ich wäre nicht überrascht, wenn die Ereignisse nicht ausgelöst, bis eine Verbindung hergestellt wurde.Interessant, es scheint, Sie können auch bevorzugen oder verlangen, dass auf einer pro-Verbindung-basis mit dem SetNetworkPreference und SetNetworkRequirement Verlängerung Methoden, aber es geht nicht über wifi-vs-zelluläre.
Die enumeration-Werte für
NetworkInterfaceType
(wifi/gsm) undNetworkInterfaceSubType
(edge/3g) sind auf MSDN verfügbar.Ohne sockel:
Leider ist die api nicht sehr beschränkte Informationen über die Art der Netzwerk-Verbindung, die Sie haben. Können Sie sagen, wenn Sie auf 3G, Mobilfunk-oder Ethernet-Adapter (also USB-Verbindung zum PC), aber das ist alle Informationen, die Sie erhalten.
Check-out dieses für mehr info Besseren Weg, um zu überprüfen, ob eine Netzwerk-Verbindung auf WP7
Um die Netzwerk-Daten für die windows phone-app, die ich.e es ist verbunden mit einem ethernet -, wifi-oder Mobilfunknetz auch immer der Subtyp ich.e 2G-oder 3g-Netz folgende Programm kann verwendet werden.
Hier, die Schnittstelle und die Subschnittstelle gibt die Netzwerk-Informationen.