2010-09-09 13 views
7

Esiste un modo più semplice e rapido per rilevare se il dispositivo (Windows Phone 7) dispone di una connessione Internet.Esiste un modo più semplice e veloce per rilevare se il dispositivo (Windows Phone 7) ha una connessione Internet

Attualmente sto inviando una richiesta web, aspettando il periodo di timeout e gestendo l'eccezione. Sperando in un modo rapido e semplice per interrogare il dispositivo per vedere se si dispone di una connessione prima di inviare qualsiasi richiesta ...

Grazie in anticipo,

risposta

8

Questo metodo restituirà NetworkInterfaceType.None se non vi è alcuna connessione.

NetworkInterface.GetInternetInterfaceType

In alternativa si otterrà NetworkInterfaceType.MobileBroadbandGSM, NetworkInterfaceType.Wireless80211, etc se c'è una connessione.

+0

Quindi non riesco a trovare quella classe nell'ultimo SDK di Windows Phone (l'ultima versione). Lo spazio dei nomi Microsoft.Devices.NetworkInformation non esiste in System.Devices.dll. Stai usando l'ultimo SDK? Grazie, – will

+2

Nevermind, l'ho trovato (i documenti non sono aggiornati). E sembra che abbiano semplificato l'interfaccia un po '. Ora puoi semplicemente chiamare: System.Net.NetworkInformation.NetworkInterface.GetIsNetworkAvailable(). – will

+1

Puoi chiamarlo, tuttavia l'osservazione storica è stata che restituisce sempre lo stesso risultato sull'emulatore indipendentemente dallo stato della connessione. GetInternetInterfaceType è stato il modo per aggirare questo. –

4

in realtà non è un modo più veloce, anche se al posto di un manichino richiesta per questo, forse potresti effettivamente fare la richiesta di dati che desideri, quindi se ritorna, puoi gestire i dati senza fare una seconda richiesta.

+0

Questo è quello che sto facendo ora, non sto usando una richiesta fittizia. Sto davvero cercando un modo veloce per determinare la connettività di rete SENZA fare una richiesta. Ma grazie per la risposta ... – will

Problemi correlati