Android中判断网络状态及其种类

 一个工具类,直接放进工程调用吧~~

<span style="color:#333333;">/**
 * a tool used for judge the network's status
 * @author liyangchao
 *
 */
public class NetWorkTools{

	public static booleanisWifi(Context paramContext) {

		return "2".equals(getNetType(paramContext)[0]);

	}

	public static booleanisMobile(Context paramContext) {

		return "1".equals(getNetType(paramContext)[0]);

	}

	public static booleanisNetAvailable(Context paramContext) {

		if ("1".equals(getNetType(paramContext)[0])

		|| "2".equals(getNetType(paramContext)[0])) {

			return true;

		}

		return false;

	}

	// public static booleanisNetworkAvailable(Context context) {

	// ConnectivityManager mgr =
	// (ConnectivityManager)context.getSystemService(Context.CONNECTIVITY_SERVICE);

	// NetworkInfo[] info =mgr.getAllNetworkInfo();

	// if (info != null) {

	// for (int i = 0; i < info.length; i++) {

	// if (info[i].getState() ==NetworkInfo.State.CONNECTED) {

	// return true;

	// }

	// }

	// }

	 // return false;

	// }

	public static String[] getNetType(Context paramContext) {

		String[] arrayOfString = { "Unknown", "Unknown" };

		PackageManager localPackageManager = paramContext.getPackageManager();

		if (localPackageManager.checkPermission(

		"android.permission.ACCESS_NETWORK_STATE",

		paramContext.getPackageName()) != 0) {

			arrayOfString[0] = "Unknown";

			return arrayOfString;

		}

		ConnectivityManager localConnectivityManager = (ConnectivityManager) paramContext

		.getSystemService("connectivity");

		if (localConnectivityManager == null) {

			arrayOfString[0] = "Unknown";

			return arrayOfString;

		}

		NetworkInfo localNetworkInfo1 = localConnectivityManager

		.getNetworkInfo(1);

		if (localNetworkInfo1 != null

		&& localNetworkInfo1.getState() == NetworkInfo.State.CONNECTED) {

			arrayOfString[0] = "2";

			return arrayOfString;

		}

		NetworkInfo localNetworkInfo2 = localConnectivityManager

		.getNetworkInfo(0);

		if (localNetworkInfo2 != null

		&& localNetworkInfo2.getState() == NetworkInfo.State.CONNECTED) {

			arrayOfString[0] = "1";

			arrayOfString[1] = localNetworkInfo2.getSubtypeName();

			return arrayOfString;

		}

		return arrayOfString;

	}

}</span>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值