生成文章|

android 判断是wifi还是4g网络

2017-4-12 09:01:15
1082
  1. package com.chengxinet.bobo.utils;

  2. import android.content.Context;
  3. import android.net.ConnectivityManager;
  4. import android.net.NetworkInfo;
  5. import android.telephony.TelephonyManager;

  6. /**
  7. * Created by Administrator on 2016/1/7.
  8. */
  9. public class NetworkUtils {
  10.     public static boolean isNetworkAvailable(Context c) {
  11.         Context context = c.getApplicationContext();
  12.         // 获取手机所有连接管理对象(包括对wi-fi,net等连接的管理)
  13.         ConnectivityManager connectivityManager = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE);

  14.         if (connectivityManager == null) {
  15.             return false;
  16.         } else {
  17.             // 获取NetworkInfo对象
  18.             NetworkInfo[] networkInfo = connectivityManager.getAllNetworkInfo();

  19.             if (networkInfo != null && networkInfo.length > 0) {
  20.                 for (NetworkInfo aNetworkInfo : networkInfo) {
  21. //                    System.out.println(i + "===状态===" + networkInfo[i].getState());
  22. //                    System.out.println(i + "===类型===" + networkInfo[i].getTypeName());
  23.                     // 判断当前网络状态是否为连接状态
  24.                     if (aNetworkInfo.getState() == NetworkInfo.State.CONNECTED) {
  25.                         return true;
  26.                     }
  27.                 }
  28.             }
  29.         }
  30.         return false;
  31.     }

  32.     /**
  33.      * 判断WIFI是否打开
  34.      * @param context
  35.      * @return
  36.      */
  37.     public static boolean isWifiEnabled(Context context) {
  38.         ConnectivityManager mgrConn = (ConnectivityManager) context
  39.                 .getSystemService(Context.CONNECTIVITY_SERVICE);
  40.         TelephonyManager mgrTel = (TelephonyManager) context
  41.                 .getSystemService(Context.TELEPHONY_SERVICE);
  42.         return ((mgrConn.getActiveNetworkInfo() != null && mgrConn
  43.                 .getActiveNetworkInfo().getState() == NetworkInfo.State.CONNECTED) || mgrTel
  44.                 .getNetworkType() == TelephonyManager.NETWORK_TYPE_UMTS);
  45.     }

  46.     /**
  47.      * 判断是否是3G网络
  48.      * @param context
  49.      * @return
  50.      */
  51.     public static boolean is3rd(Context context) {
  52.         ConnectivityManager cm = (ConnectivityManager) context
  53.                 .getSystemService(Context.CONNECTIVITY_SERVICE);
  54.         NetworkInfo networkINfo = cm.getActiveNetworkInfo();
  55.         if (networkINfo != null
  56.                 && networkINfo.getType() == ConnectivityManager.TYPE_MOBILE) {
  57.             return true;
  58.         }
  59.         return false;
  60.     }

  61.     /**
  62.      * 判断是wifi还是3g网络
  63.      * @param context
  64.      * @return
  65.      */
  66.     public static boolean isWifi(Context context) {
  67.         ConnectivityManager cm = (ConnectivityManager) context
  68.                 .getSystemService(Context.CONNECTIVITY_SERVICE);
  69.         NetworkInfo networkINfo = cm.getActiveNetworkInfo();
  70.         if (networkINfo != null
  71.                 && networkINfo.getType() == ConnectivityManager.TYPE_WIFI) {
  72.             return true;
  73.         }
  74.         return false;
  75.     }
  76. }
复制以上内容
收藏
2 条回帖
虚无噬 2017-7-30 16:02:37
感谢楼主无私分享源代码。
efedfdsf5645A 2017-12-3 06:06:05
666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666
需要登陆后才可进行回复 登录
*滑动验证:

返回顶部
现在加入我们,注册一个账号 账号登陆 QQ账号登陆 微博账号登陆