Em algumas situações precisamos obter acesso à Internet ou à própria rede local (wifi) para que nossa aplicação possa realizar alguma tarefa que dependa desse recurso, como por exemplo, a leitura de um RSS via Internet, o envio de dados para uma outra aplicação através da rede local, envio ou recepção de e-mail, etc.
É claro que se você estiver desenvolvendo um aplicativo que dependa desse recurso, é bom de bom tom, antes de utilizar a rede, verificar se a mesma está ativa/disponível para evitar que o usuário receba um erro grosseiro do seu software.
No Windows Phone, há uma forma muito simples de se fazer essa checagem. Veja o código abaixo:
... ... using System.Net.NetworkInformation; ... public MainPage() { if (NetworkInterface.GetIsNetworkAvailable()) { //A rede está ativa, então continue com a ação do seu software... } else MessageBox.Show("Por favor, ative sua conexão de dados."); } ...
Simples, não?
Grande abraço,
Eduardo Henrique Rizo
[twitter-follow screen_name=’eduardorizo’ show_count=’yes’]
Pingback: Curso Windows Phone – Tópicos « Blog do Eduardo H. Rizo
E quando o WiFi está ligado e conectado, porem a rede esta sem dados ( limitado ) se fosse um computador, como identificar isso?
Olá, tudo bom?
O post do link abaixo explica como observar as variações de estado (state) da rede. Talvez ajude.
http://msdn.microsoft.com/en-us/library/windowsphone/develop/hh487166(v=vs.105).aspx
Como posso ativar dados móveis (3G ou 4G) através de código?
Olá Cristian, tudo bom?
Você não conseguirá fazer isso apenas usando código C#. Será necessário usar um Chooser da API do Windows Phone para que ele chame o aplicativo de configuração de trafego de dados do aparelho. Veja baixo:
ConnectionSettingsTask phone = new ConnectionSettingsTask();
phone.ConnectionSettingsType = ConnectionSettingsType.Cellular;
phone.Show();
Abraços,
Eduardo H. Rizo
Eduardo, recentemente tenho enfrentado problemas quando tenho uma conexão pelo 3g/4g(com a internet ilimitada e funcionando), ele diz que está conectado, mas quando tento baixar algo ele dá um erro como se não estivesse. já no wifi funciona perfeitamente. qual seria a solução para esse problema?
Olá Rodolfo, tudo bom?
Pela sua descrição, o problema parece ser com sua operadora e não com o aparelho. Para validar isso, tente colocar o seu chip em um outro aparelho e navegar na internet. Se não funcionar então entre em contato com a sua operadora de telefonia.
Abraços,
Eduardo H. Rizo