Android进阶篇-判断3G/WIFI/WAP

手机上网的方式主要是GRPS/WIFI/WAP三种形式。

有的时候,我们需要获取到当前上网的形式。

这就需要使用到下面这个函数:

	/**
	 * 判断联网状态及联网方式
	 * @param context 当前应用上下文
	 * @return NO_NETWORK 无可用网路; WIFI 通过wifi方式联网; GRPS 通过GPRS方式联网 
	 * */
	public static int theWayOfNetwork(Context context){
		ConnectivityManager conn = (ConnectivityManager)context.getSystemService(Context.CONNECTIVITY_SERVICE);
		
		if(conn.getActiveNetworkInfo() == null || (!conn.getActiveNetworkInfo().isAvailable())){
			return HttpUtil.NO_NETWORK;
		}
		if(conn.getNetworkInfo(1).getState() ==  NetworkInfo.State.CONNECTED){
			return HttpUtil.WIFI;
		}
		if(conn.getNetworkInfo(0).getState() ==  NetworkInfo.State.CONNECTED){
			String proxyHost = android.net.Proxy.getDefaultHost();
	        if (proxyHost != null && !proxyHost.equals("")) {
	        	// WAP方式
	        	return HttpUtil.WAP;
	        }
			return HttpUtil.GPRS;
		}
		return HttpUtil.NO_NETWORK;
	}

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章