android中判断是否有网络链接和判断是否是WIFI

版权声明:转载请注明出处! https://blog.csdn.net/ziyejinwei1994/article/details/51891467
/**
 * 是否是无线
 * @param icontext
 * @return
 */
public static boolean isWifiActive(Context icontext){
  Context context = icontext.getApplicationContext();
  ConnectivityManager connectivity = (ConnectivityManager) context
      .getSystemService(Context.CONNECTIVITY_SERVICE);
  NetworkInfo[] info;
  if (connectivity != null) {
    info = connectivity.getAllNetworkInfo();
    if (info != null) {
      for (int i = 0; i < info.length; i++) {
        if (info[i].getTypeName().equals("WIFI") && info[i].isConnected()) {
          return true;
        }
      }
    }
  }
  return false;
}

/**
 * 判断网络是否链接
 * @param activity
 * @return
 */
public boolean isNetworkAvailable(Activity activity)
{
  Context context = activity.getApplicationContext();
  // 获取手机所有连接管理对象(包括对wi-fi,net等连接的管理)
  ConnectivityManager connectivityManager = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE);

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

    if (networkInfo != null && networkInfo.length > 0)
    {
      for (int i = 0; i < networkInfo.length; i++)
      {
        Log.i("===状态===", networkInfo[i].getState()+"");
        Log.i("===类型===", networkInfo[i].getTypeName()+"");

        // 判断当前网络状态是否为连接状态
        if (networkInfo[i].getState() == NetworkInfo.State.CONNECTED)
        {
          return true;
        }
      }
    }
  }
  return false;
}

猜你喜欢

转载自blog.csdn.net/ziyejinwei1994/article/details/51891467