Check Wifi Connection static Android Programming


To detect if WiFi Connection is available we need to use ConnectivityManager and NetworkInfo class,

We can create a method checkWifiStatus() that returns a boolean value true if Wifi is available.

import android.content.Context;
import android.content.pm.ActivityInfo;
import android.net.ConnectivityManager;
import android.net.NetworkInfo;
import android.os.Bundle;
import android.support.v7.app.ActionBarActivity;
import android.widget.Toast;


public class MainActivity extends ActionBarActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);
        setContentView(R.layout.activity_main);

        Toast.makeText(MainActivity.this, "Wifi connected : " + checkWifiStatus(), Toast.LENGTH_SHORT).show();
    }

    public boolean checkWifiStatus() {
        ConnectivityManager connManager = (ConnectivityManager) (MainActivity.this).getSystemService(Context.CONNECTIVITY_SERVICE);
        NetworkInfo networkInfo = connManager.getNetworkInfo(ConnectivityManager.TYPE_WIFI);
        return networkInfo.isConnected();
    }

}

You need to pass the Context if you have this method in other class.

 public boolean checkWifiStatus(Context context) {
        ConnectivityManager connManager = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE);
        NetworkInfo networkInfo = connManager.getNetworkInfo(ConnectivityManager.TYPE_WIFI);
        return networkInfo.isConnected();
    }

Important: Don't forget to user permission in AndroidManifest.xml,

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