Android網路開發的時候,需要判斷當前網路連接方式是wifi還是wap,如果是wap則需要通過使用代理訪問。
為什麼需要使用代理訪問?
WAP只是一種GPRS應用模式,它與GRPS的接入方式是無關的。WAP應用採用的實現方式是“終端+WAP網關+WAP伺服器”的模式,不同於一般Internet的“終端+伺服器”的工作模式。主要的目的是通過WAP網關完成WAP-WEB的協議轉換以達到節省網路流量和相容現有WEB應用的目的。
private boolean isNeedProxy(final Context context) { boolean ret = false; final ConnectivityManager connectManager = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE); final NetworkInfo activeNetInfo = connectManager.getActiveNetworkInfo(); if (activeNetInfo != null) { final String type = activeNetInfo.getTypeName(); // WIFI not available if (type.equalsIgnoreCase("WIFI")) { ret = false; } //Mobile else if (type.equalsIgnoreCase("MOBILE")) { final String mobileProxyIp = android.net.Proxy.getHost(context); final int mobileProxyPort = android.net.Proxy.getPort(context); if (mobileProxyIp == null || "".equals(mobileProxyIp) || mobileProxyPort == 0) { ret = false; } else { hostUrl = mobileProxyIp; hostPort = mobileProxyPort; ret = true; } } } return ret; }