一、代理知识扫盲
为什么要通过代码代理联网呢?
我自己使用的是Android手机,没记得自己设置过。但是用户本地可能配置的不对,或者是仅能使用wap,却设置的使用wap上网,或者wap设置的代理地址和端口不对。
Android联网设置方法
设置 -- 无线和网络 -- 移动网络设置 -- 接入点名称 -- 有三个选项
1. CMNET
2. CMWAP
3. 中国移动彩信 (为什么还有彩信接入点呢?彩信需要连接专用服务器)
为什么会有这两种接入点?
NET针对于PC,WAP针对于手机上网。因为定位不同WAP有部分限制。手机也可以使用NET连接。
什么是WAP?
WAP为无线应用协议,采用“终端+ WAP 网关+ WAP 服务器”模式,主要的目的是通过 WAP 网关完成 WAP-WEB 的协议转换以达到
节省网络流量和兼容现有 WEB 应用的目的。(把Internet网上HTML语言的信息转换为WML,在手机上显示。)
每种服务商提供WAP的名字和代理IP都不同:
服务 |
接入点名称 |
代理IP |
移动WAP服务 |
CMWAP |
10.0.0.172
|
联通WAP服务 |
UNIWAP |
10.0.0.172 |
电信WAP服务 |
CTWAP |
10.0.0.200 |
什么是NET?
拥有完全的Internet访问权,和PC访问网络相同,使用“终端+服务器”模式。
如果手机使用NET直接联网即可,但是如果使用WAP不能直接连接,在编程上需要自己设置代理连接网络。
二、如何判断手机设置的是NET还是WAP
如何进行查询
三、使用Android内置HttpClient代理联网
例子运行环境
Windows 7 + Android 8 + Eclipse 3.7.1 + 移动(CMWAP)
// 代理参数设置
// ********* 自己使用移动CMWAP,所以这里设置移动的代理IP
String proxyStr = "10.0.0.172";
int port = Proxy.getDefaultPort();
HttpHost httpHost = new HttpHost(proxyStr, port);
BasicHttpParams basicHttpParams = new BasicHttpParams();
HttpConnectionParams.setStaleCheckingEnabled(basicHttpParams, false);
basicHttpParams.setParameter(ConnRouteParams.DEFAULT_PROXY, httpHost);
// 使用设置的参数创建HttpClient实例
HttpClient defaultHttpClient = new DefaultHttpClient(basicHttpParams);
例子下载
四、实验
1. 本地设置wap为CMWAP, 执行例子程序(HttpClient使用代理上网)。
2. 本地设置wap为CMWAP,配置错误的代理IP, 执行例子程序(HttpClient使用代理上网)。
可以通过本地软件检测,错误配置本地IP如果软件中为做处理不能连接网络。例如google市场
3. 本地设置net, 执行例子程序(HttpClient使用代理上网)。 不能联网
思考:
判断当前使用的是net还是wap?
本地保存的接入点相关信息?
* 导出db文件方式
未root手机
root手机
模拟器
通过proxy字段判断是哪种连接方式
资料:
CMWAP和CMNET 的主要区别与适用范围
http://zhidao.baidu.com/question/25439575
(疑问:只有一种接入方式GPRS,CMNET和CMWAP是人为划分的两种GPRS接入方式。)
GPRS是通用分组无线服务技术,主要目的是在民用通信(打电话)方面用于数据传输的工具。
GPRS
http://www.vertpedia.com/showwiki.asp?keywords=GPRS
WAP
http://baike.baidu.com/view/7319.htm
http://zh.wikipedia.org/wiki/%E6%97%A0%E7%BA%BF%E5%BA%94%E7%94%A8%E5%8D%8F%E8%AE%AE
Android 1.5 的APN设定与上网处理
http://blog.csdn.net/liujian885/article/details/5656350
教你如何开关Android的APN网络
http://www.iteye.com/topic/565662
default、mms、supl、dun、hipri接入点类型的区别default、mms、supl、dun、hipri接入点类型的区别
http://www.harde.org/blog/2011/09/default%E3%80%81mms%E3%80%81supl%E3%80%81dun%E3%80%81hipri%E6%8E%A5%E5%85%A5%E7%82%B9%E7%B1%BB%E5%9E%8B%E7%9A%84%E5%8C%BA%E5%88%AB.html
判断联网状态(切换网络之后,想要知道何时建立连接了。【或者是使用重试解决?】)
http://www.cnblogs.com/jk1001/archive/2010/07/29/1787664.html
转载请注明出处: http://blog.csdn.net/love_world_/article/details/7887973
2013-04-22 添加思考条目
全面解读HTTP Cookie
http://www.webryan.net/2011/08/wiki-of-http-cookie/