Android——网络连接状态管理ConnectivityManager

关键类

ConnectivityManager是网络连接的管理器,当我们需要知道当前网络的状态时,就需要通过它来获得网络信息对象NetworkInfo,这个对象中包含了网络连接的信息,包括:是否有网,网络类型等信息。

NetworkInfo的获取

ConnectivityManager connManager = (ConnectivityManager)mContext.getSystemService(Context.CONNCTIVITY_SERVICE)
NetworkInfo mNetworkInfor = connManager.getActiveNetworkInfo();

检查网络是否可用

这主要检查的是网络是否可用。
那么什么叫不可用呢?
就是说在一些情况下,设备被阻止连接到网络。
这些情况包括:
- 当地区域不支持当前网络类型;
- 开启飞行模式;
- 设备连接到了一个不同的家庭网络上,导致数据漫游不可进行。
这应该是包括了显示为连接,但实际网络不可用的情况,即这种情况下会返回true

mNetworkInfo.isAvailable();

检查网络是否连通

这个方法实际检查的就是网络是否可以进行数据传递,它的准确率应该是比上一种方法要高的。

mNetworkInfo.isConnected();

检查是移动网还是WIFI

if(mNetworkInfo.getType()==ConnectivityManager.TYPE_WIFI){  //判断WIFI网

}else if(activeNetInfo.getType()==ConnectivityManager.TYPE_MOBILE) {  //判断移动网
}  

你可能感兴趣的:(Android—基础部分)