Checando se há internet (me ajudem, já to desesperado)

Queria uma maneira fácil e simples de verificar se o dispositivo tem conexao com a internet, se não tiver enviar pra uma activit com uma mensagem que precisa de conexao para usar o aplicativo. caso tenha internet, abrir um webview. que ficará na ActivityMain!

Obs: A verificação é na tela splashScreen. Veja minha programação

TELA SPLASH

public class Splash extends Activity {

    private static int tempo_splash = 1000;

    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.splash);

        getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN); // Para o layout preencher toda tela do cel (remover a barra de tit.)

        new Timer().schedule(new TimerTask() {
            @Override
            public void run() {
                Intent intent = new Intent();
                intent.setClass(Splash.this, MyConnectivityChecker.class);
                startActivity(intent);
                finish();//this should be after starting intent
            }
        }, 2000);

    }
}

Agora que tenho a tela Splash feita, setando a classeSplash.this e a que fará a verificação de internet MyConnectivityChecker.this , aqui está a outra classe:

public class MyConnectivityChecker extends Activity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
    }

    public void verificaInternet() {
        ConnectivityManager cm = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);

        if (cm.getActiveNetworkInfo() != null
                && cm.getActiveNetworkInfo().isAvailable()
                && cm.getActiveNetworkInfo().isConnected()) {

            setContentView(R.layout.activity_main);

        } else {

            setContentView(R.layout.internet);

        }
    }


}

OBS: Meu manifesto já está com as permissões.

Cara eu uso assim:

import android.app.AlertDialog;
import android.content.Context;
import android.content.DialogInterface;
import android.content.Intent;
import android.net.ConnectivityManager;
import android.net.NetworkInfo;
import android.net.wifi.WifiManager;

/**

  • Created by pedrosa on 25/03/16.
    */
    public class VerificaConexao {
    private Context context;

    public VerificaConexao(Context context){
    this.context = context;
    }

    public void dialogIfOffline() {
    new AlertDialog.Builder(context)
    .setTitle(“Problema de conexão”)
    .setMessage(“Para acessar o app é preciso estar conectado, verifique sua conexão.”)
    .setNegativeButton(“Ajustar”, new DialogInterface.OnClickListener() {
    @Override
    public void onClick(DialogInterface dialog, int which) {
    context.startActivity(new Intent(WifiManager.ACTION_PICK_WIFI_NETWORK));
    }
    }).show();
    }

    public static boolean isConnected(Context context) {
    ConnectivityManager connectivityManager = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE);
    NetworkInfo info = connectivityManager.getActiveNetworkInfo();
    return info != null && info.isConnectedOrConnecting();
    }
    }

E quando preciso de algo que precisa de internet:

if (!VerificaConexao.isConnected(this)) {
new VerificaConexao(this).dialogIfOffline();
}else {

}