Android 广播监听网络状态详解及实例代码
更新时间:2017年02月25日 11:08:26 作者:androidstarjack
这篇文章主要介绍了Android 广播监听网络状态详解及实例代码的相关资料,需要的朋友可以参考下
Android 广播监听网络状态
我们在做多线程下载的时候,或者是在加载h5界面的时候,常常会遇到网络状态不好或者断网的时候,在这或者当我们的应用程序启动没有退出的时候,我们就需要对网络状态监听加以判断。
这时候,我们一般情况下,两种方式进行处理。
第一: 开启服务。
第二:发送广播的形式。
建议采用方法二。
源代码如下:
广播:
/** * 有网络的广播 */ BroadcastReceiver connectionReceiver = new BroadcastReceiver() { @Override public void onReceive(Context context, Intent intent) { ConnectivityManager connectMgr = (ConnectivityManager) getSystemService(CONNECTIVITY_SERVICE); NetworkInfo mobNetInfo = connectMgr.getNetworkInfo(ConnectivityManager.TYPE_MOBILE); NetworkInfo wifiNetInfo = connectMgr.getNetworkInfo(ConnectivityManager.TYPE_WIFI); if (!mobNetInfo.isConnected() && !wifiNetInfo.isConnected()) { Log.i("yuyahao", "断网了"); Message msg = new Message(); msg.what = DownLoadFileUtil.isNetConnectionError; mHandler.sendMessage(msg); // unconnect network }else { // connect network Log.i(TAG, "有来网了"); } } };
注册:
//有网络 的时候在注册网络监听广播 IntentFilter intentFilter = new IntentFilter(); intentFilter.addAction(ConnectivityManager.CONNECTIVITY_ACTION); registerReceiver(connectionReceiver, intentFilter); showDialog(); pool.execute(mUpdateUIThread);
其完整的代码如下:
方法1就是开启service的方式。代码很简单。
感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!
相关文章
详解 Kotlin Reference Basic Types, String, Array and Imports
这篇文章主要介绍了详解 Kotlin Reference Basic Types, String, Array and Imports的相关资料,需要的朋友可以参考下2017-06-06Android利用ContentProvider初始化组件的踩坑记录
做Android SDK开发的时候,一般我们会将初始化的方法封装,然后让调用SDK的开发者在Application的onCreate方法中进行初始化,下面这篇文章主要给大家介绍了关于Android利用ContentProvider初始化组件的踩坑记录,需要的朋友可以参考下2022-04-04Android MPAndroidChart开源库图表之折线图的实例代码
这篇文章主要介绍了Android MPAndroidChart开源库图表之折线图的实例代码,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧2018-05-05
最新评论