判断Android设备是否连接网络
public static boolean checkNet(Context context) { try { ConnectivityManager connectivity = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE); if (connectivity != null) { NetworkInfo info = connectivity.getActiveNetworkInfo(); if (info != null && info.isConnected()) { if (info.getState() == NetworkInfo.State.CONNECTED) { return true; } } } } catch (Exception e) { return false; } return false; } 以上代码只能判断是否有可用的连接,而不能判断是否能连网 [java] view plaincopyprint? * 检验网络连接 并toast提示 * * @return */ public boolean note_Intent(Context context) { ConnectivityManager con = (ConnectivityManager) context .getSystemService(Context.CONNECTIVITY_SERVICE); NetworkInfo networkinfo = con.getActiveNetworkInfo(); if (networkinfo == null || !networkinfo.isAvailable()) { // 当前网络不可用 Toast.makeText(context.getApplicationContext(), "请先连接Internet!", Toast.LENGTH_SHORT).show(); return false; } boolean wifi = con.getNetworkInfo(ConnectivityManager.TYPE_WIFI) .isConnectedOrConnecting(); if (!wifi) { // 提示使用wifi Toast.makeText(context.getApplicationContext(), "建议您使用WIFI以减少流量!", Toast.LENGTH_SHORT).show(); } return true; } 以上转自:http://www.iteye.com/topic/1117733 android中判断网络连接是否可用 http://www.cnblogs.com/codeworker/archive/2012/04/23/2467180.html 一、判断网络连接是否可用 [java] view plaincopyprint? public static boolean isNetworkAvailable(Context context) { ConnectivityManager cm = (ConnectivityManager) context .getSystemService(Context.CONNECTIVITY_SERVICE); if (cm == null) { } else { //如果仅仅是用来判断网络连接 //则可以使用 cm.getActiveNetworkInfo().isAvailable(); NetworkInfo[] info = cm.getAllNetworkInfo(); if (info != null) { for (int i = 0; i < info.length; i++) { if (info.getState() == NetworkInfo.State.CONNECTED) { return true; } } } } return false; } 二、判断GPS是否打开 [java] view plaincopyprint? public static boolean isGpsEnabled(Context context) { LocationManager lm = ((LocationManager) context .getSystemService(Context.LOCATION_SERVICE)); List accessibleProviders = lm.getProviders(true); return accessibleProviders != null && accessibleProviders.size() > 0; } 三、判断WIFI是否打开 [java] view plaincopyprint? 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); } 四、判断是否是3G网络 [java] view plaincopyprint? public static boolean is3rd(Context context) { ConnectivityManager cm = (ConnectivityManager) context .getSystemService(Context.CONNECTIVITY_SERVICE); NetworkInfo networkINfo = cm.getActiveNetworkInfo(); if (networkINfo != null && networkINfo.getType() == ConnectivityManager.TYPE_MOBILE) { return true; } return false; } 五、判断是wifi还是3g网络,用户的体现性在这里了,wifi就可以建议下载或者在线播放。 [java] view plaincopyprint? public static boolean isWifi(Context context) { ConnectivityManager cm = (ConnectivityManager) context .getSystemService(Context.CONNECTIVITY_SERVICE); NetworkInfo networkINfo = cm.getActiveNetworkInfo(); if (networkINfo != null && networkINfo.getType() == ConnectivityManager.TYPE_WIFI) { return true; } return false; } |