android网络监测

public class NetworkCheck {
	/**  
     * 网络是否可用  
     */ 
	public static boolean isNetworkAvailable(Context context) {   
		ConnectivityManager connectivity = (ConnectivityManager) context   
	                .getSystemService(Context.CONNECTIVITY_SERVICE);   
	    if (connectivity == null) {   
	    } else {   
	    	NetworkInfo[] info = connectivity.getAllNetworkInfo();   
	        if (info != null) {   
	        	for (int i = 0; i < info.length; i++) {   
	            	if (info[i].getState() == NetworkInfo.State.CONNECTED) {   
	                	return true;   
	                }   
	            }   
	        }   
	    }   
	    return false;   
	}   
	
	/**  
     * wifi是否打开  
     */   
	public static boolean isWifiEnabled(Context context) {   
		ConnectivityManager mgrConn = (ConnectivityManager) context   
	                .getSystemService(Context.CONNECTIVITY_SERVICE);   
	    TelephonyManager mgrTel = (TelephonyManager) context   
	                .getSystemService(Context.TELEPHONY_SERVICE);   
	    return ((mgrConn.getActiveNetworkInfo() != null && mgrConn   
	                .getActiveNetworkInfo().getState() == NetworkInfo.State.CONNECTED) || mgrTel   
	                .getNetworkType() == TelephonyManager.NETWORK_TYPE_UMTS);
	}
	
	 /**  
     * 判断当前网络是否是wifi网络  
     * if(activeNetInfo.getType()==ConnectivityManager.TYPE_MOBILE) { //判断3G网  
     *   
     * @param context  
     * @return boolean  
     */   
    public static boolean isWifi(Context context) {   
        ConnectivityManager connectivityManager = (ConnectivityManager) context   
                .getSystemService(Context.CONNECTIVITY_SERVICE);   
        NetworkInfo activeNetInfo = connectivityManager.getActiveNetworkInfo();   
        if (activeNetInfo != null   
                && activeNetInfo.getType() == ConnectivityManager.TYPE_WIFI) {   
            return true;   
        }   
        return false;   
    }   
    
    /**  
     * 判断当前网络是否是3G网络  
     *   
     * @param context  
     * @return boolean  
     */   
    public static boolean is3G(Context context) {   
        ConnectivityManager connectivityManager = (ConnectivityManager) context   
                .getSystemService(Context.CONNECTIVITY_SERVICE);   
        NetworkInfo activeNetInfo = connectivityManager.getActiveNetworkInfo();   
        if (activeNetInfo != null   
                && activeNetInfo.getType() == ConnectivityManager.TYPE_MOBILE) {   
            return true;   
        }   
        return false;   
    }   

}

你可能感兴趣的:(android网络监测)