**1.需要在MainActivity内自定义一个内部类NetworkChangeReceiver,继承于Broadcastrececiver,并重写OnReceiver方法.
代码如下:
class NetWorkChangeReceiver extends BroadCastReceiver{
@Overrite
public void onReceiver(Context context,Intent intent){
ConnectivityManager connectityManager=getSystemService (Context .CONNECTIVITY_SERVICE);//步骤1
NetworkInfo networkInfo=connectionManager.getActiveNetworkInfo();//步驟2
if(networkInfo!=null&&networkInfo.isAvailable()){//步驟3
Toast.makeText(context,"network is available",Toast.LENGTH_SHORT) .show();
}else{
Toast.makeText(context,"network is unavail able ",Toas t.LENGT H_SHORT ).show();
}
}
}**
1.通过getSystemService获得connentivityManager的实例
2.通过connentivityManager调用它的getActiveNetworkInfo获得NetworkInfo的实例
3.接着调用NetworkInfo的isAvaiable方法判断是否有网络!
在Android当中消息就是Intent,过滤器就是IntentFilter。发出消息的组件可以在消息中设置目标组件的相关信息,目标组件也可以设置过滤器,然后系统会进行过滤,只把组件所感兴趣的消息,传递给组件