判断网络状态

首先在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网络是否可用(4G网络)

    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;   
    }  

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值