domingo, 29 de dezembro de 2013

Como saber o tipo de conexão que o usuário está, no Android?

Hum, essa precisa de um pouco mais de atenção...

Vamos lá, na classe da Activity que você quer a mensagem, use este codigo:

//Fiz assim pois estou exibindo o resultado em um "TextView" e seu ID é "txtStatusRede"
TextView statusRede = (TextView)findViewById(R.id.txtStatusRede);
//Aqui, criamos a variável que acessará a informação
ConnectivityManager conexao = (ConnectivityManager)getSystemService(Context.CONNECTIVITY_SERVICE);

//Agora, o "if" que verifica, de fato:
        if(conexao.getNetworkInfo(0).isConnected()){// "0" pergunta se é 3G
            statusRede.setText("3G Conectado");
        } else if(conexao.getNetworkInfo(1).isConnected()){// "1" pergunta se é WiFi
            statusRede.setText("WiFi Conectado");
        } else {// se nenhum dos dois estiver conectado
            final AlertDialog.Builder builder=new AlertDialog.Builder(this);
            builder.setTitle("Atenção");
            builder.setMessage("Nenhuma rede conectada!");
            builder.setIcon(android.R.drawable.ic_dialog_alert);
            builder.show();
            statusRede.setText("Não conectado!");
        } 

Agora, isso só funcionará após uma alteração no Manifest:

    <
uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"
/>

Agora, sim!

Nenhum comentário: