Como verificar a disponibilidade da rede?
Preciso conectar meu aplicativo ao servidor, usando wifi (se estiver disponível) ou gprs (se o wifi não estiver disponível). Aqui está o meu código para verificar a disponibilidade da conexão
public static final boolean isConnectionAvailable(Activity a)
{
ConnectivityManager cm = (ConnectivityManager)a.getSystemService(Context.CONNECTIVITY_SERVICE);
State mobile = cm.getNetworkInfo(0).getState();
State wifi = cm.getNetworkInfo(1).getState();
if (wifi == NetworkInfo.State.CONNECTED || wifi == NetworkInfo.State.CONNECTING)
{
return true;
}
if (mobile == NetworkInfo.State.CONNECTED || mobile == NetworkInfo.State.CONNECTING)
{
return true;
}
return false;
}
Esta é uma maneira correta? Alguém pode me sugerir uma maneira melhor?