您的位置:首页 > 理论基础 > 计算机网络

判断网络连接是否正常EventerBus发送

2017-12-03 19:33 561 查看

依赖:

compile 'org.greenrobot:eventbus:3.0.0'

写一个类存放具体的网络判断:

public class NetBroadCastReciver{
public int getNetype(Context context) {
int netType = -1;
ConnectivityManager connMgr = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE);

NetworkInfo networkInfo = connMgr.getActiveNetworkInfo();

//无网络
if (networkInfo == null) {
return netType;
}
int nType = networkInfo.getType();
//手机网络
if (nType == ConnectivityManager.TYPE_MOBILE) {
netType = 2;
} else if (nType == ConnectivityManager.TYPE_WIFI) {//wifi网络
netType = 1;
}
//返回
return netType;
}
}


主线程的具体操作

EventBus.getDefault().register(this);//注册EventBus
//网络连接判断
int netype =new NetBroadCastReciver().getNetype(getActivity());

 if(netype==1||netype==2){
EventBus.getDefault().post("成功");
}else if(netype==-1){
EventBus.getDefault().post("失败");
}

//接受
@Subscribe
public void onEventMainThread(Object event) {
Toast.makeText(getActivity(),event+"",Toast.LENGTH_SHORT).show();
}
//反注册
@Override
public void onDestroy() {
super.onDestroy();
EventBus.getDefault().unregister(this);
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: