手机联网,代理模式设置

手机联网的时候CMWAP模式设置代理,发现联通WAP下才需要代理模式,其他均可直连。欢迎探讨。

private void detectProxy() {

    ConnectivityManager cm = (ConnectivityManager) mContext
    .getSystemService(Context.CONNECTIVITY_SERVICE);
    NetworkInfo ni = cm.getActiveNetworkInfo();
    // 如果当前有网络连接,并且是GPRS连接,读取系统默认的代理设置
    if (ni != null && ni.isAvailable() 
        && ni.getType() == ConnectivityManager.TYPE_MOBILE
        && ni.getExtraInfo().equals("UNIWAP")) {  //这是关键!但是每个手机设置的apn未必都这样命名,所以需要先判断运营商信息,再根据apn来判断是否需要代理。 

            String proxyHost = android.net.Proxy.getDefaultHost();
            int port = android.net.Proxy.getDefaultPort();
            if (proxyHost != null) {

                InetSocketAddress sa = new InetSocketAddress(proxyHost, port);
                mProxy = new Proxy(Proxy.Type.HTTP, sa);
            }
      }
}

你可能感兴趣的:(安卓,proxy,503错误,CMWAP)