您的位置:首页 > 理论基础 > 计算机网络

判断用于使用哪个渠道进行联网

2015-11-25 23:06 621 查看
package com.example.lottery.net.protocal;

import org.apache.commons.lang3.StringUtils;

import com.example.lottery.GlobakeParams;

import android.content.Context;

import android.net.ConnectivityManager;

import android.net.NetworkInfo;

/**

*

* @author yangzc

* @data 2015-7-2 下午10:40:17

* @desc 判断用于使用哪个渠道进行联网

*/

public class NetUtils {

/*

* 判断网络

*/

public static boolean checkNetWork(Context context) {

// 工作内容

// 1.判断wifi是否处于可连接状态

// 2.哦按段基站是否处于可连接状态

// wifi和基站无法联网

// 基站联网:wap(使用工具,代理信息设置)

// 判断wap还是net,读取代理配置信息,如果ip不为空wap

boolean isWifi = isWifiConnection(context);

boolean isBaseStation = isBaseStationConnection(context);

if (!isWifi && !isBaseStation) {

return false;

}

if (isBaseStation) {

String ip = android.net.Proxy.getDefaultHost();

if (StringUtils.isNotBlank(ip)) {

GlobakeParams.isWap = true;

}

}

return true;

}

/**

* 判断基站是否连接

*

* @param context

* @return

*/

private static boolean isBaseStationConnection(Context context) {

// 获取联网的管理工具

// 读取基站力王配置参数

// 判断基站是否处于连接状态

ConnectivityManager manager = (ConnectivityManager) context

.getSystemService(Context.CONNECTIVITY_SERVICE);

NetworkInfo mNetworkInfo = manager

.getNetworkInfo(ConnectivityManager.TYPE_MOBILE);

if (mNetworkInfo != null) {

return mNetworkInfo.isConnected();

}

return false;

}

/**

* 判断wifi是否连接

*

* @param context

* @return

*/

private static boolean isWifiConnection(Context context) {

ConnectivityManager manager = (ConnectivityManager) context

.getSystemService(Context.CONNECTIVITY_SERVICE);

NetworkInfo mNetworkInfo = manager

.getNetworkInfo(ConnectivityManager.TYPE_WIFI);

if (mNetworkInfo != null) {

return mNetworkInfo.isConnected();

}

return false;

}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  网络 Android