@Override public void onReceive(Context mContext, Intent intent) { try { if (!isFirstRegister) { NetworkInfo networkInfo = null; ConnectivityManager cm = (ConnectivityManager) mContext.getSystemService(Context.CONNECTIVITY_SERVICE); networkInfo = cm.getActiveNetworkInfo(); alog.debug("接收网络监听广播"); if (null != networkInfo) { boolean isConnect = networkInfo.isConnectedOrConnecting(); alog.debug("netBroadcastReceiver isConnect = " + isConnect); if (isConnect) { if (!isConnteced) { isConnteced = true; getData(mGameId); } } } else { // 网络断开了 alog.debug("当前网络断开了"); isConnteced = false; // loadingView.showContentNetExceptionOrNullData(true); loadingView.getmHandler().sendEmptyMessage(Constant.EXCEPTION); } } else { isFirstRegister = false; } } catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace(); } }
/** * @Title: registReceiver @Description: TODO(注册广播监听网络变化) * * @param: * @return: void * @throws */ public void registReceiver() { IntentFilter intentFilter = new IntentFilter(); intentFilter.addAction(ConnectivityManager.CONNECTIVITY_ACTION); alog.debug("registReceiver()"); registerReceiver(netBroadcastReceiver, intentFilter); isFirstRegister = true; }
/** * @Title: unregistReceiver @Description: TODO(注销广播监听) * * @param: * @return: void * @throws */ public void unregistReceiver() { alog.debug("unregistReceiver()"); unregisterReceiver(netBroadcastReceiver); }