title: Checking the Networking Connectivity using BroadcastReceiver in Android
body: <p>I am using the BroadcastReceiver to check the network connectivity while my app is running.I have binded the BroadcastReceiver  with the Activity inorder to bring few controls like AlertDialog while the connectivity goes down. but now i don't want to restrict this receiver to a particular activity instead i want to make this to be applied for my whole app(All Activities). So what way should i have to proceed to get that done...</p>
  
  <p>This is the code that i have used.Please let me know whether my code reaches the standard and please correct me if have gone somewhere wrong. </p>
  
  <pre><code>package com.xx.mobile;
  
  import android.app.Activity;
  import android.app.AlertDialog;
  import android.content.BroadcastReceiver;
  import android.content.Context;
  import android.content.DialogInterface;
  import android.content.Intent;
  import android.content.IntentFilter;
  import android.net.ConnectivityManager;
  import android.net.NetworkInfo;
  import android.os.Bundle;
  import android.util.Log;
  import android.widget.Toast;
  
  
  public class CheckforConnectivity extends Activity {
  private static final String LOG_TAG = CheckforConnectivity.class.getSimpleName();
  static final String ACTION = "android.net.conn.CONNECTIVITY_CHANGE";
  private boolean mActiveNetState = false;
  private boolean mMobileNetState = false;
  private boolean mStatus = false;
  
  
  @Override
  protected void onCreate(Bundle savedInstanceState) {
      super.onCreate(savedInstanceState);
  
      IntentFilter filter = new IntentFilter(ACTION);
      this.registerReceiver(ConnectivityCheckReceiver, filter);
  }
  
  @Override
  protected void onDestroy(){
      super.onDestroy();
      unregisterReceiver(ConnectivityCheckReceiver);
  }
  
  
  
  private final BroadcastReceiver mConnectivityCheckReceiver = new BroadcastReceiver() {
      @Override
      public void onReceive(Context context, Intent intent) {
          String action = intent.getAction();
  
          boolean noConnectivity = intent.getBooleanExtra(ConnectivityManager.EXTRA_NO_CONNECTIVITY, false);
          String reason = intent.getStringExtra(ConnectivityManager.EXTRA_REASON);
                  boolean isFailover = intent.getBooleanExtra(ConnectivityManager.EXTRA_IS_FAILOVER, false);
                      NetworkInfo currentNetworkInfo = (NetworkInfo) intent.getParcelableExtra(ConnectivityManager.EXTRA_NETWORK_INFO);
          NetworkInfo otherNetworkInfo = (NetworkInfo) intent.getParcelableExtra(ConnectivityManager.EXTRA_OTHER_NETWORK_INFO);
          Log.i(TAG, "Status : " + noConnectivity + ", Reason :" + reason + ", FailOver :" + isFailover + ", Current Network Info : " + currentNetworkInfo + ", OtherNetwork Info :" + otherNetworkInfo);
  
          mStatus = noConnectivity;
          Log.d(TAG, "Status :" + mStatus);
  
          if(mStatus){
          AlertDialog.Builder builder = new AlertDialog.Builder(NotifySMSReceived.this);
          builder.setMessage("Connection is not Available !");
          builder.setTitle("Info");
          builder.setPositiveButton("Ok", new DialogInterface.OnClickListener(){
  
              @Override
              public void onClick(DialogInterface dialog, int which) {
                  // TODO Auto-generated method stub
                  dialog.dismiss();
  
              }
  
          });
          AlertDialog alert = builder.create();
          alert.show();
      }
      else {
  
              AlertDialog.Builder builder = new AlertDialog.Builder(NotifySMSReceived.this);
              builder.setMessage("Connection is Available !");
              builder.setTitle("Info");
              builder.setPositiveButton("Ok", new DialogInterface.OnClickListener(){
  
                  @Override
                  public void onClick(DialogInterface dialog, int which) {
                      // TODO Auto-generated method stub
                      dialog.dismiss();
  
                  }
  
              });
              AlertDialog alert = builder.create();
              alert.show();
      }
  
  
  
      }
  };
  }
  </code></pre>
  
  <p>Any sort of help is highly appreciated.</p>
  
  <p>Thanks</p>