android網絡監測

fanlix 12年前發布 | 960 次閱讀 Chrome Dev Editor Aurora

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

}</pre>

 本文由用戶 fanlix 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!