Verificar conexao de aplicativo android com internet

Estou desenvolvendo um aplicativo no android e gostaria de saber como verificar se existe conexao com internet
para não receber uma exception.

        final NetworkInfo wifiNetworkInfo =
                connectivityManager.getNetworkInfo(ConnectivityManager.TYPE_WIFI);

        if (wifiNetworkInfo == null) {
            return false;
        }

        boolean connected = wifiNetworkInfo.getState() == NetworkInfo.State.CONNECTED
                || wifiNetworkInfo.getState() == NetworkInfo.State.CONNECTING;

[quote=Marky.Vasconcelos][code]
final NetworkInfo wifiNetworkInfo =
connectivityManager.getNetworkInfo(ConnectivityManager.TYPE_WIFI);

    if (wifiNetworkInfo == null) {
        return false;
    }

    boolean connected = wifiNetworkInfo.getState() == NetworkInfo.State.CONNECTED
            || wifiNetworkInfo.getState() == NetworkInfo.State.CONNECTING;

[/code][/quote]

Valeu amigão, mas minha conexão WIFI só retorna false;

Use esse metodo :

[code] public static boolean VerificaConexao(Context contexto){

	ConnectivityManager cm = (ConnectivityManager) contexto.getSystemService(Context.CONNECTIVITY_SERVICE);//Pego a conectividade do contexto o qual o metodo foi chamado
	
	NetworkInfo netInfo = cm.getActiveNetworkInfo();//Crio o objeto netInfo que recebe as informacoes da NEtwork
	
	System.out.println("NETWORK INFO: "+netInfo.getSubtypeName());
	
	if ( (netInfo != null) && (netInfo.isConnectedOrConnecting()) && (netInfo.isAvailable()) ) //Se o objeto for nulo ou nao tem conectividade retorna false
		return true;
	else
		return false;
	
	}[/code]

e
Adicione ao seu androidmanifest.xml essa linha:

Como pode ver esse codigo apenas verifica se a conexao mas tive um pequeno problema que foi o seguinte.
Em um local que usei o app a conexao existia mas era preciso um login nao da rede mas da internet para navegar e ai acontecia o erro.

Fica facil de arrumar isso mas vai de acordo com seu app… no meu caso em que eu pegava dados da internet e jogava para o banco quando havia conexao eu apenas adicionei uma condicao que era a de verificar se haviam dados…

Espero ter ajudado !

public static boolean VerificaConexao(Context contexto){  
      
    ConnectivityManager cm = (ConnectivityManager) contexto.getSystemService(Context.CONNECTIVITY_SERVICE);//Pego a conectividade do contexto o qual o metodo foi chamado  
      
    NetworkInfo netInfo = cm.getActiveNetworkInfo();//Crio o objeto netInfo que recebe as informacoes da NEtwork  
      
    System.out.println("NETWORK INFO: "+netInfo.getSubtypeName());  
      
    if ( (netInfo != null) && (netInfo.isConnectedOrConnecting()) && (netInfo.isAvailable()) ) //Se o objeto for nulo ou nao tem conectividade retorna false  
        return true;  
    else  
        return false;  
      
    } 

estou tentando usar esse metodo pára verificar minha conexao mas o problema q encorntei foi q esse metodo só retorna TRUE!!

alguem saberia disser onde estaria o erro???

obrigado!