监听网络状态改变

来源:互联网 发布:北京棉花检验数据平台 编辑:程序博客网 时间:2024/05/05 16:27

第一步

写一个类继承BroadcastReceiver.重写public void onReceive(Context context, Intent intent){}

第二步

在onReceive中写网络广播接收时间

需要用到ConnectivityManager这个类

代码如下

点击打开链接



第三步

由于广播是四大组件之一,所以需要注册,这里使用动态注册,在activity中的onCreate方法中,或者在applaction中动态注册广播

在activity的onDistroy中注销广播,根据需求来确定广播的生命周期

动态注册:


protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
//动态注册网络监听
mNetWorkReceiver = new NetWorkReceiver();
IntentFilter filter = new IntentFilter();
filter.addAction(ConnectivityManager.CONNECTIVITY_ACTION);
registerReceiver(mNetWorkReceiver,filter);


动态反注册

@Override
protected void onDestroy() {
super.onDestroy();
//取消监听
unregisterReceiver(mNetWorkReceiver);

}

0 0
原创粉丝点击