Android 获取网络状态

2018-07-20    来源:open-open

容器云强势上线!快速搭建集群,上万Linux镜像随意使用

首先在AndroidManifest.xml添加权限

<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />

1,判断是否有网络连接
    public boolean isNetworkConnected(Context context) {    
        if (context != null) {    
            ConnectivityManager mConnectivityManager = (ConnectivityManager) context    
                    .getSystemService(Context.CONNECTIVITY_SERVICE);    
            NetworkInfo mNetworkInfo = mConnectivityManager.getActiveNetworkInfo();    
            if (mNetworkInfo != null) {    
                return mNetworkInfo.isAvailable();    
            }    
        }    
        return false;    
    }  

2.判断WIFI网络是否可用
    public boolean isWifiConnected(Context context) {    
        if (context != null) {    
            ConnectivityManager mConnectivityManager = (ConnectivityManager) context    
                    .getSystemService(Context.CONNECTIVITY_SERVICE);    
            NetworkInfo mWiFiNetworkInfo = mConnectivityManager    
                    .getNetworkInfo(ConnectivityManager.TYPE_WIFI);    
            if (mWiFiNetworkInfo != null) {    
                return mWiFiNetworkInfo.isAvailable();    
            }    
        }    
        return false;    
    }  

3.判断MOBILE网络是否可用
    public boolean isMobileConnected(Context context) {    
        if (context != null) {    
            ConnectivityManager mConnectivityManager = (ConnectivityManager) context    
                    .getSystemService(Context.CONNECTIVITY_SERVICE);    
            NetworkInfo mMobileNetworkInfo = mConnectivityManager    
                    .getNetworkInfo(ConnectivityManager.TYPE_MOBILE);    
            if (mMobileNetworkInfo != null) {    
                return mMobileNetworkInfo.isAvailable();    
            }    
        }    
        return false;    
    }  

4.判断网络类型
      //返回值 -1:没有网络  1:WIFI网络2:wap网络3:net网络  
public static 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)  
    {   
        if(networkInfo.getExtraInfo().toLowerCase().equals("cmnet"))  
        {   
            netType = 3;   
        }   
        else  
        {   
            netType = 2;   
        }   
    }   
    else if(nType==ConnectivityManager.TYPE_WIFI)  
    {   
        netType = 1;   
    }   
    return netType;   
}  

标签: 权限 网络

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点!
本站所提供的图片等素材,版权归原作者所有,如需使用,请与原作者联系。

上一篇:C#操作json的通用帮助类

下一篇:TextView实现跑马灯效果