package com.mm.android.deviceaddmodule.mobilecommon.utils; import android.content.Context; import android.net.ConnectivityManager; import android.net.NetworkInfo; public class NetWorkHelper { /** * 获取当前网络类型 * @param context * @return */ public static int checkNetwork(Context context) { int flag = -1; ConnectivityManager conMan = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE); if (conMan == null) { flag = -1; } else { NetworkInfo[] info = conMan.getAllNetworkInfo(); if (info != null) { for (NetworkInfo anInfo : info) { if (anInfo.getState() == NetworkInfo.State.CONNECTED) { flag = anInfo.getType(); break; } } } } return flag; } /** * 获取当前网络是否连接 * @param context * @return */ public static boolean isConnected(Context context) { if(context == null){ return false; } ConnectivityManager conn = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE); if(conn == null){ return false; } NetworkInfo info = conn.getActiveNetworkInfo(); return (info != null && info.isAvailable()); } public static boolean isWifiNetworkAvailable(Context context) { if(context == null)return false; ConnectivityManager connectivityManager = (ConnectivityManager) context .getSystemService(Context.CONNECTIVITY_SERVICE); NetworkInfo activeNetInfo = connectivityManager.getActiveNetworkInfo(); if (activeNetInfo != null && activeNetInfo.getType() == ConnectivityManager.TYPE_WIFI) { // 判断wifi return true; } return false; } public static int getIpV4Value(String ipOrMask) { byte[] addr = getIpV4Bytes(ipOrMask); int address = addr[3] & 0xFF; address |= ((addr[2] << 8) & 0xFF00); address |= ((addr[1] << 16) & 0xFF0000); address |= ((addr[0] << 24) & 0xFF000000); return address; } public static byte[] getIpV4Bytes(String ipOrMask) { try{ String[] addrs = ipOrMask.split("\\."); int length = addrs.length; byte[] addr = new byte[length]; for(int i = 0; i < length; i++) { addr[i] = (byte)(Integer.parseInt(addrs[i]) & 0xff); } return addr; }catch (Exception e) { } return new byte[4]; } /** * 网络是否可用 * * @param context * @return */ public static boolean isNetworkAvailable(Context context) { android.net.ConnectivityManager connectivity = (android.net.ConnectivityManager) context .getSystemService(Context.CONNECTIVITY_SERVICE); // 获取系统网络连接管理�? if (connectivity == null) { // 如果网络管理器为null return false; // 返回false表明网络无法连接 } else { android.net.NetworkInfo[] info = connectivity.getAllNetworkInfo(); // 获取�?��的网络连接对�? if (info != null) { // 网络信息不为null for (NetworkInfo anInfo : info) { // 遍历网路连接对象 if (anInfo.isConnected()) { // 当有�?��网络连接对象连接上网络时 return true; // 返回true表明网络连接正常 } } } } return false; } }