ConnectivityManager主要管理和网络连接相关的操作,通过getSystemService(Context.CONNECTIVITY_SERVICE)获
取网络连接的服务。因此我们可以通过ConnectivityManager这个类下的getActiveNetworkInfo()方法来获取当前的网络
连接状态,这个方法返回的是NetworkInfo对象, NetworkInfo描述了当前网络Mobile和Wifi的状态。NetworkInfo类中有
三个方法:(1)getType() 获取当前网络的类型,比如mobileor Wi-Fi。(2)getTypeName() 获取当前网络的类型
名,比如 “WIFI” or “MOBILE”。(3)isAvailable()方法用来判断当前网络连接是否可用,可用返回true,反之返回false。
关于如何查看当前网络的类型,请参看以下代码:
public String getNetworkStateName(Context context) {
ConnectivityManager mConnectivityManager = (ConnectivityManager) context
.getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo mNetworkInfo = mConnectivityManager
.getActiveNetworkInfo();
if(mNetworkInfo.isAvailable()){
//获取网络类型
int netWorkType =mNetworkInfo.getType();
if(netWorkType==ConnectivityManager.TYPE_WIFI){
return "当前网络是WIFI";
}else if(netWorkType==ConnectivityManager.TYPE_MOBILE){
return "当前网络是3G";
}else{
return "其它方式";
}
}else{
return "当前无网络";
}
}
最后在AndroidMainfest文件中添加访问权限:
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
转载请注明出处:http://blog.csdn.net/hai_qing_xu_kong/article/details/44057903 情绪控_